Age | Commit message (Collapse) | Author |
|
A batching mechanism was added to EventLoop::handleNextEvent, which
caused it to be renamed to handleNextEvents. The problem with the
batching was that it breaks EventLoop::removeEventsFromOwner: events
already grabbed off the events_ queue for invocation could be removed,
leading to issues in cases where two events were grabbed off the queue
that referred to the same entity, the second event was a timer event,
and the first event caused the timer to be stopped. The timer event
would in this case be executed, leading to unexpected behaviour or
crashes, as shown by the added unit test.
Test-Information:
Unit tests pass on Debian 9 and macOS 10.14.
Benchmarked the eventloop on Debian and macOS, and did not notice a
performance degradation.
Transferred files using S5B and IBB, and checked there were no UI hangs.
Transfer speed before and after the change are roughly the same.
Change-Id: Ife7312f533e8f0976c2e8077d16e0b63fbac6eb1
|
|
This cuts down our dependency on Boost further. Another
benefit is that mutex classes of C++11 standard library are
recognized by TSAN.
Test-Information:
Unit and integration tests pass on OS X 10.11.4.
Change-Id: Id4dcdb42e3d5155e107ce1d7618acbf26f913b6f
|
|
This change was done by applying the following 'gsed'
replacement calls to all source files:
's/\#include <boost\/shared_ptr\.hpp>/\#include <memory>/g'
's/\#include <boost\/enable_shared_from_this\.hpp>/\#include <memory>/g'
's/\#include <boost\/smart_ptr\/make_shared\.hpp>/\#include <memory>/g'
's/\#include <boost\/make_shared\.hpp>/\#include <memory>/g'
's/\#include <boost\/weak_ptr\.hpp>/\#include <memory>/g'
's/boost::make_shared/std::make_shared/g'
's/boost::dynamic_pointer_cast/std::dynamic_pointer_cast/g'
's/boost::shared_ptr/std::shared_ptr/g'
's/boost::weak_ptr/std::weak_ptr/g'
's/boost::enable_shared_from_this/std::enable_shared_from_this/g'
The remaining issues have been fixed manually.
Test-Information:
Code builds on OS X 10.11.4 and unit tests pass.
Change-Id: Ia7ae34eab869fb9ad6387a1348426b71ae4acd5f
|
|
Removed trailing spaces and whitespace on empty lines
in the process.
Changed CheckTabs.py tool to disallow hard tabs in source
files.
Test-Information:
Manually checked 30 random files that the conversion worked
as expected.
Change-Id: I874f99d617bd3d2bb55f02d58f22f58f9b094480
|
|
Changed "" style includes to <> style.
Test-Information:
Build with Clang 3.9.0 and ran all tests on OS X 10.11.4.
Change-Id: Ic05e53f2e5dba39cc1307b116fc5f17b62ab9eb8
|
|
Change-Id: I94ab4bbb68c603fe872abeb8090575de042f5cb4
|
|
|
|
When EventLoop::handleEvent() was called recursively (i.e. by calling
processEvents() from a slot), weird things happened, especially in the
XMPP parser (assertion triggers, parse error from server, ...). Now, callbacks
are put in a queue handled by the topmost handleEvent.
Resolves: #592, #568
|
|
|
|
|
|
|
|
|
|
|
|
|