Something needs to hold a non-weak ref to BridgeDescMgr.
I think that right now nothing actually holds a strong reference to our BridgeDescMgr
: when we get into update_desired_descs
, we have self.bridge_desc_provider.is_some() == true
, but self.bridge_desc_provider.as_ref().and_then(Weak::upgrade).is_some() == false
. To me, that says that nobody has actually kept a strong reference.
It would match our behavior elsewhere if we were to store the Arc<·>
in TorClient
. What do you think?