diff options
author | Remko Tronçon <git@el-tramo.be> | 2011-02-26 19:36:33 (GMT) |
---|---|---|
committer | Remko Tronçon <git@el-tramo.be> | 2011-02-26 22:48:01 (GMT) |
commit | 29d5ae626df9fa0946952a78e9f1e8869ef66ae6 (patch) | |
tree | e5f3d7cbb4abfdff8b2b7b7b5fd44eaf2406b59a /Swiften | |
parent | d375363472a5a4fb1f59b6e695d5c68db14d97fd (diff) | |
download | swift-contrib-29d5ae626df9fa0946952a78e9f1e8869ef66ae6.zip swift-contrib-29d5ae626df9fa0946952a78e9f1e8869ef66ae6.tar.bz2 |
Some more cleanups.
Diffstat (limited to 'Swiften')
-rw-r--r-- | Swiften/EventLoop/SimpleEventLoop.cpp | 11 | ||||
-rw-r--r-- | Swiften/EventLoop/SimpleEventLoop.h | 2 | ||||
-rw-r--r-- | Swiften/QA/ScriptedTests/SendMessage.lua | 4 |
3 files changed, 15 insertions, 2 deletions
diff --git a/Swiften/EventLoop/SimpleEventLoop.cpp b/Swiften/EventLoop/SimpleEventLoop.cpp index 2d71544..b77639c 100644 --- a/Swiften/EventLoop/SimpleEventLoop.cpp +++ b/Swiften/EventLoop/SimpleEventLoop.cpp @@ -44,6 +44,17 @@ void SimpleEventLoop::doRun(bool breakAfterEvents) { } } +void SimpleEventLoop::runOnce() { + std::vector<Event> events; + { + boost::unique_lock<boost::mutex> lock(eventsMutex_); + events.swap(events_); + } + foreach(const Event& event, events) { + handleEvent(event); + } +} + void SimpleEventLoop::stop() { postEvent(boost::bind(&SimpleEventLoop::doStop, this)); } diff --git a/Swiften/EventLoop/SimpleEventLoop.h b/Swiften/EventLoop/SimpleEventLoop.h index bdffa3d..6fb3f53 100644 --- a/Swiften/EventLoop/SimpleEventLoop.h +++ b/Swiften/EventLoop/SimpleEventLoop.h @@ -27,6 +27,8 @@ namespace Swift { doRun(true); } + void runOnce(); + void stop(); virtual void post(const Event& event); diff --git a/Swiften/QA/ScriptedTests/SendMessage.lua b/Swiften/QA/ScriptedTests/SendMessage.lua index a3f1917..8c54d00 100644 --- a/Swiften/QA/ScriptedTests/SendMessage.lua +++ b/Swiften/QA/ScriptedTests/SendMessage.lua @@ -33,12 +33,12 @@ received_message = client2:for_event(function(event) if event["type"] == "message" and event["from"] == client1_jid then return event["body"] end - end) + end, 10000) assert(received_message == "Hello") print "Retrieving the roster" roster = client1:get_roster() -table.foreach(roster, print) +tprint(roster) client1:disconnect() client2:disconnect() |