Yeah, it would only happen if `updateWatches` gets the lock because of a subsequent update before `Unwatch` gets called. In that case this will hang waiting for the goroutine calling `Unwatch` to receive the new update.