DescriptionIssue #4688, #3595 - Web request use scheduled threads; unit tests terminate
For #3595, change the web request object to use scheduled threads and not
detached ones. This had caused unit tests to hang, because the unit tests were
defective. One of the tasks in the unit tests contained an infinite loop and
any thread that ran it never terminated, thus blocking eternally when joined.
For #4688, replace the infinite loop with a condition variable. Introduce the
class `LazyWaiter` to encapsulate this behavior. Add a member of this type to
`LazyWebRequest` and expose a `Cancel()` function. Add `TearDown()` functions
to unit tests as appropriate and call `Cancel()` within them.
Fix some miscellaneous problems in 'test/Prefs.cpp' that were throwing errors
when running the unit tests.
Patch Set 1 #
Total comments: 2
MessagesTotal messages: 1
|