As discussed in #6565, we don't want to introduce a dependency on boost 1.50, since debian wheezy.
This fixes #6394, but without using boost::reverse_lock.
Are you sure this re-locks if no exception is thrown?
Sorry, I missed a line, fixed.
ACK, but IMHO I don't see why not to just bump to boost 1.50.
@dcousens This is not about "us" bumping boost, it's about us failing to compile in environments that would otherwise compile fine.
It's fine to require a newer version if it brings big new features that'd be hard to match without it, but in this case I don't think it's worth it. Concept ACK on the approach here.
I like this solution better than #6610. At least it scopes the lock(), instead of depending on an extra call to lock.owns_lock() to determine where the exception came from.
Although implementing a RAII reverse_lock of our own would have my preference, it's the cleanest solution.
Closing (#6630)