[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdepim/libkleo/backends/qgpgme
From: Marc Mutz <mutz () kde ! org>
Date: 2008-04-21 11:18:14
Message-ID: 1208776694.847251.26016.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 799365 by mutz:
Make resetDataObjects() act only on QIODeviceDataProvider-backed data objects, and \
rename accordingly
M +2 -4 qgpgmedecryptjob.cpp
M +2 -4 qgpgmedecryptverifyjob.cpp
M +2 -2 qgpgmedownloadjob.cpp
M +3 -5 qgpgmeencryptjob.cpp
M +13 -6 qgpgmejob.cpp
M +2 -2 qgpgmejob.h
M +5 -7 qgpgmesignencryptjob.cpp
M +3 -5 qgpgmesignjob.cpp
M +2 -4 qgpgmeverifydetachedjob.cpp
M +2 -2 qgpgmeverifyopaquejob.cpp
--- trunk/KDE/kdepim/libkleo/backends/qgpgme/qgpgmedecryptjob.cpp #799364:799365
@@ -91,7 +91,7 @@
hookupContextToEventLoopInteractor();
if ( const GpgME::Error err = mCtx->startDecryption( *mInData, *mOutData ) ) {
- resetDataObjects();
+ resetQIODeviceDataObjects();
doThrow( err, i18n("Can't start decrypt job") );
}
}
@@ -99,9 +99,7 @@
void Kleo::QGpgMEDecryptJob::doOperationDoneEvent( const GpgME::Error & ) {
const GpgME::DecryptionResult res = mCtx->decryptionResult();
const QByteArray plainText = outData();
-#ifndef KLEO_SYNCHRONOUS_API_HOTFIX
- resetDataObjects();
-#endif
+ resetQIODeviceDataObjects();
emit result( res, plainText );
}
--- trunk/KDE/kdepim/libkleo/backends/qgpgme/qgpgmedecryptverifyjob.cpp \
#799364:799365 @@ -92,7 +92,7 @@
hookupContextToEventLoopInteractor();
if ( const GpgME::Error err = mCtx->startCombinedDecryptionAndVerification( \
*mInData, *mOutData ) ) {
- resetDataObjects();
+ resetQIODeviceDataObjects();
doThrow( err, i18n("Can't start combined decrypt/verify operation") );
}
}
@@ -101,9 +101,7 @@
const GpgME::DecryptionResult dr = mCtx->decryptionResult();
const GpgME::VerificationResult vr = mCtx->verificationResult();
const QByteArray plainText = outData();
-#ifndef KLEO_SYNCHRONOUS_API_HOTFIX
- resetDataObjects();
-#endif
+ resetQIODeviceDataObjects();
emit result( dr, vr, plainText );
}
--- trunk/KDE/kdepim/libkleo/backends/qgpgme/qgpgmedownloadjob.cpp #799364:799365
@@ -63,7 +63,7 @@
const GpgME::Error err = mCtx->startPublicKeyExport( patterns(), *mOutData );
if ( err ) {
- resetDataObjects();
+ resetQIODeviceDataObjects();
deleteLater();
}
return err;
@@ -83,7 +83,7 @@
const GpgME::Error err = mCtx->startPublicKeyExport( patterns(), *mOutData );
if ( err ) {
- resetDataObjects();
+ resetQIODeviceDataObjects();
deleteLater();
}
return err;
--- trunk/KDE/kdepim/libkleo/backends/qgpgme/qgpgmeencryptjob.cpp #799364:799365
@@ -106,7 +106,7 @@
const GpgME::Context::EncryptionFlags flags =
alwaysTrust ? GpgME::Context::AlwaysTrust : GpgME::Context::None;
if ( const GpgME::Error err = mCtx->startEncryption( recipients, *mInData, \
*mOutData, flags ) ) {
- resetDataObjects();
+ resetQIODeviceDataObjects();
doThrow( err, i18n("Can't start encrypt job") );
}
}
@@ -133,16 +133,14 @@
waitForFinished();
ciphertext = outData();
mResult = mCtx->encryptionResult();
- resetDataObjects();
+ resetQIODeviceDataObjects();
return mResult;
}
void Kleo::QGpgMEEncryptJob::doOperationDoneEvent( const GpgME::Error & ) {
mResult = mCtx->encryptionResult();
const QByteArray ciphertext = outData();
-#ifndef KLEO_SYNCHRONOUS_API_HOTFIX
- resetDataObjects();
-#endif
+ resetQIODeviceDataObjects();
emit result( mResult, ciphertext );
}
--- trunk/KDE/kdepim/libkleo/backends/qgpgme/qgpgmejob.cpp #799364:799365
@@ -133,15 +133,22 @@
Kleo::QGpgMEJob::~QGpgMEJob() {
InvarianceChecker check( this );
delete mCtx; mCtx = 0;
- resetDataObjects();
+ delete mOutData; mOutData = 0;
+ delete mOutDataDataProvider; mOutDataDataProvider = 0;
+ delete mInData; mInData = 0;
+ delete mInDataDataProvider; mInDataDataProvider = 0;
deleteAllPatterns();
}
-void Kleo::QGpgMEJob::resetDataObjects() {
- delete mInData; mInData = 0;
- delete mInDataDataProvider; mInDataDataProvider = 0;
- delete mOutData; mOutData = 0;
- delete mOutDataDataProvider; mOutDataDataProvider = 0;
+void Kleo::QGpgMEJob::resetQIODeviceDataObjects() {
+ if ( const QGpgME::QByteArrayDataProvider * const dp = \
dynamic_cast<QGpgME::QByteArrayDataProvider*>( mOutDataDataProvider ) ) { + \
delete mOutData; mOutData = 0; + delete mOutDataDataProvider; \
mOutDataDataProvider = 0; + }
+ if ( const QGpgME::QByteArrayDataProvider * const dp = \
dynamic_cast<QGpgME::QByteArrayDataProvider*>( mInDataDataProvider ) ) { + \
delete mInData; mInData = 0; + delete mInDataDataProvider; mInDataDataProvider \
= 0; + }
}
void Kleo::QGpgMEJob::deleteAllPatterns() {
--- trunk/KDE/kdepim/libkleo/backends/qgpgme/qgpgmejob.h #799364:799365
@@ -103,9 +103,9 @@
void createOutData();
/*! Creates a GpgME::Data/QGpgME::QByteArrayDataProvider pair associated with \a \
out */ void createOutData( const boost::shared_ptr<QIODevice> & out );
- /*! Destroys all data objects (call this before the result signal
+ /*! Destroys all data objects that hold shared_ptr's to QIODevice's (call this \
before the result signal is emitted, or on error return from start()). */
- void resetDataObjects();
+ void resetQIODeviceDataObjects();
/*! Creates a GpgME::Data/QGpgME::QIODeviceDataProvider pair,
associated with \a in */
void createInData( const boost::shared_ptr<QIODevice> & in );
--- trunk/KDE/kdepim/libkleo/backends/qgpgme/qgpgmesignencryptjob.cpp #799364:799365
@@ -118,7 +118,7 @@
const GpgME::Context::EncryptionFlags flags =
alwaysTrust ? GpgME::Context::AlwaysTrust : GpgME::Context::None ;
if ( const GpgME::Error err = mCtx->startCombinedSigningAndEncryption( recipients, \
*mInData, *mOutData, flags ) ) {
- resetDataObjects();
+ resetQIODeviceDataObjects();
doThrow( err, i18n("Can't start combined sign-encrypt job") );
}
}
@@ -133,7 +133,7 @@
} catch ( const GpgME::Exception & e ) {
mResult.first = GpgME::SigningResult( e.error() );
mResult.second = GpgME::EncryptionResult();
- resetDataObjects();
+ resetQIODeviceDataObjects();
throw;
}
}
@@ -145,7 +145,7 @@
QByteArray & cipherText ) {
if ( const GpgME::Error err = setup( signers, recipients, plainText, alwaysTrust ) \
) {
mResult = std::make_pair( GpgME::SigningResult( err ), GpgME::EncryptionResult() \
);
- resetDataObjects();
+ resetQIODeviceDataObjects();
return mResult;
}
@@ -154,7 +154,7 @@
cipherText = outData();
mResult.first = mCtx->signingResult();
mResult.second = mCtx->encryptionResult();
- resetDataObjects();
+ resetQIODeviceDataObjects();
return mResult;
}
@@ -162,9 +162,7 @@
mResult.first = mCtx->signingResult();
mResult.second = mCtx->encryptionResult();
const QByteArray cipherText = outData();
-#ifndef KLEO_SYNCHRONOUS_API_HOTFIX
- resetDataObjects();
-#endif
+ resetQIODeviceDataObjects();
emit result( mResult.first, mResult.second, cipherText );
}
--- trunk/KDE/kdepim/libkleo/backends/qgpgme/qgpgmesignjob.cpp #799364:799365
@@ -114,7 +114,7 @@
hookupContextToEventLoopInteractor();
if ( const GpgME::Error err = mCtx->startSigning( *mInData, *mOutData, mode ) ) \
{
- resetDataObjects();
+ resetQIODeviceDataObjects();
doThrow( err, i18n("Can't start sign job") );
}
}
@@ -143,16 +143,14 @@
signature = outData();
mResult = mCtx->signingResult();
- resetDataObjects();
+ resetQIODeviceDataObjects();
return mResult;
}
void Kleo::QGpgMESignJob::doOperationDoneEvent( const GpgME::Error & ) {
mResult = mCtx->signingResult();
const QByteArray cipherText = outData();
-#ifndef KLEO_SYNCHRONOUS_API_HOTFIX
- resetDataObjects();
-#endif
+ resetQIODeviceDataObjects();
emit result( mResult, cipherText );
}
--- trunk/KDE/kdepim/libkleo/backends/qgpgme/qgpgmeverifydetachedjob.cpp \
#799364:799365 @@ -95,16 +95,14 @@
hookupContextToEventLoopInteractor();
if ( const GpgME::Error err = mCtx->startDetachedSignatureVerification( *mInData, \
*mOutData ) ) {
- resetDataObjects();
+ resetQIODeviceDataObjects();
doThrow( err, i18n("Can't start detached signature verification") );
}
}
void Kleo::QGpgMEVerifyDetachedJob::doOperationDoneEvent( const GpgME::Error & ) {
const GpgME::VerificationResult vr = mCtx->verificationResult();
-#ifndef KLEO_SYNCHRONOUS_API_HOTFIX
- resetDataObjects();
-#endif
+ resetQIODeviceDataObjects();
emit result( vr );
}
--- trunk/KDE/kdepim/libkleo/backends/qgpgme/qgpgmeverifyopaquejob.cpp #799364:799365
@@ -91,7 +91,7 @@
hookupContextToEventLoopInteractor();
if ( const GpgME::Error err = mCtx->startOpaqueSignatureVerification( *mInData, \
*mOutData ) ) {
- resetDataObjects();
+ resetQIODeviceDataObjects();
doThrow( err, i18n("Can't start opaque signature verification") );
}
}
@@ -99,7 +99,7 @@
void Kleo::QGpgMEVerifyOpaqueJob::doOperationDoneEvent( const GpgME::Error & ) {
const GpgME::VerificationResult vr = mCtx->verificationResult();
const QByteArray plainText = outData();
- resetDataObjects();
+ resetQIODeviceDataObjects();
emit result( vr, plainText );
}
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic