summaryrefslogtreecommitdiff
authorzecke <zecke>2003-09-30 08:28:21 (UTC)
committer zecke <zecke>2003-09-30 08:28:21 (UTC)
commit4dd842eacb6c04303932e4cbebedff14db7cbc87 (patch) (side-by-side diff)
treefce6ebe83d9c3863b1cf9313a264c85014a716dc
parent5430b226e390cc9af6a3257d6998e34bf806c9e2 (diff)
downloadopie-4dd842eacb6c04303932e4cbebedff14db7cbc87.zip
opie-4dd842eacb6c04303932e4cbebedff14db7cbc87.tar.gz
opie-4dd842eacb6c04303932e4cbebedff14db7cbc87.tar.bz2
Use a QQueue as in Qtopia
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--library/qpeapplication.cpp20
1 files changed, 11 insertions, 9 deletions
diff --git a/library/qpeapplication.cpp b/library/qpeapplication.cpp
index 4d0b0ea..98af70a 100644
--- a/library/qpeapplication.cpp
+++ b/library/qpeapplication.cpp
@@ -24,2 +24,3 @@
#include <qfile.h>
+#include <qqueue.h>
#ifdef Q_WS_QWS
@@ -102,5 +103,3 @@ public:
- {
- qcopq.setAutoDelete( TRUE );
- }
+ {}
@@ -135,3 +134,3 @@ public:
QGuardedPtr<QWidget> lastraised;
- QList<QCopRec> qcopq;
+ QQueue<QCopRec> qcopq;
QString styleName;
@@ -142,3 +141,3 @@ public:
{
- qcopq.append( new QCopRec( ch, msg, data ) );
+ qcopq.enqueue( new QCopRec( ch, msg, data ) );
}
@@ -151,8 +150,11 @@ public:
#ifndef QT_NO_COP
-
- for ( QListIterator<QCopRec> it( qcopq ); ( r = it.current() ); ++it )
- QCopChannel::sendLocally( r->channel, r->message, r->data );
+ while((r=qcopq.dequeue())) {
+ // remove from queue before sending...
+ // event loop can come around again before getting
+ // back from sendLocally
+ QCopChannel::sendLocally( r->channel, r->message, r->data );
#endif
- qcopq.clear();
+ delete r;
+ }
}