diff options
author | Marcus Brinkmann <[email protected]> | 2008-01-10 13:38:34 +0000 |
---|---|---|
committer | Marcus Brinkmann <[email protected]> | 2008-01-10 13:38:34 +0000 |
commit | 7813804014ca664f063a6f1c0c06a477c2ff3dc6 (patch) | |
tree | 1bcd5428f0f611a1bbdbf2f0c3f08ffd40794034 | |
parent | 2008-01-10 Marcus Brinkmann <[email protected]> (diff) | |
download | gpgme-7813804014ca664f063a6f1c0c06a477c2ff3dc6.tar.gz gpgme-7813804014ca664f063a6f1c0c06a477c2ff3dc6.zip |
2008-01-10 Marcus Brinkmann <[email protected]>
* kdpipeiodevice.cpp: New version from Frank Osterfeld.
-rw-r--r-- | gpgme/ChangeLog | 2 | ||||
-rw-r--r-- | gpgme/kdpipeiodevice.cpp | 15 |
2 files changed, 11 insertions, 6 deletions
diff --git a/gpgme/ChangeLog b/gpgme/ChangeLog index 9f5bbe60..60b4e503 100644 --- a/gpgme/ChangeLog +++ b/gpgme/ChangeLog @@ -1,5 +1,7 @@ 2008-01-10 Marcus Brinkmann <[email protected]> + * kdpipeiodevice.cpp: New version from Frank Osterfeld. + * engine-gpgconf.c (gpgconf_config_load_cb2): Handle the flag NO_ARG_DESC. diff --git a/gpgme/kdpipeiodevice.cpp b/gpgme/kdpipeiodevice.cpp index 9e0179c9..dd2503bd 100644 --- a/gpgme/kdpipeiodevice.cpp +++ b/gpgme/kdpipeiodevice.cpp @@ -329,11 +329,14 @@ void KDPipeIODevice::Private::emitReadyRead() emit q->readyRead(); if ( !thisPointer ) - return; - qDebug( "KDPipeIODevice::Private::emitReadyRead %p, %d: locking reader (CONSUMER THREAD)", this, counter ); - synchronized( reader ) { - qDebug( "KDPipeIODevice::Private::emitReadyRead %p, %d: locked reader (CONSUMER THREAD)", this, counter ); - reader->readyReadSentCondition.wakeAll(); + return; + + if ( reader ) { + qDebug( "KDPipeIODevice::Private::emitReadyRead %p, %d: locking reader (CONSUMER THREAD)", this, counter ); + synchronized( reader ) { + qDebug( "KDPipeIODevice::Private::emitReadyRead %p, %d: locked reader (CONSUMER THREAD)", this, counter ); + reader->readyReadSentCondition.wakeAll(); + } } qDebug( "KDPipeIODevice::Private::emitReadyRead %p leaving %d", this, counter ); @@ -704,7 +707,7 @@ void Reader::run() { while ( !cancel && !error && bufferFull() ) { notifyReadyRead(); - if ( bufferFull() ) { + if ( !cancel && bufferFull() ) { qDebug( "%p: Reader::run: buffer is full, going to sleep", this ); bufferNotFullCondition.wait( &mutex ); } |