-rw-r--r-- | noncore/settings/packagemanager/oipkg.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/noncore/settings/packagemanager/oipkg.cpp b/noncore/settings/packagemanager/oipkg.cpp index 417ee95..127204d 100644 --- a/noncore/settings/packagemanager/oipkg.cpp +++ b/noncore/settings/packagemanager/oipkg.cpp @@ -440,12 +440,13 @@ bool OIpkg::executeCommand( OPackage::Command command, const QStringList ¶me switch( command ) { case OPackage::Update : { connect( this, SIGNAL(signalIpkgMessage(const QString &)), receiver, slotOutput ); ipkg_lists_update( &m_ipkgArgs ); + disconnect( this, SIGNAL(signalIpkgMessage(const QString &)), 0, 0 ); }; break; case OPackage::Upgrade : { connect( this, SIGNAL(signalIpkgMessage(const QString &)), receiver, slotOutput ); ipkg_packages_upgrade( &m_ipkgArgs ); @@ -456,22 +457,24 @@ bool OIpkg::executeCommand( OPackage::Command command, const QStringList ¶me { OConfItem *dest = it.current(); if ( dest->name() != "root" ) linkPackageDir( dest->name() ); } delete destList; + disconnect( this, SIGNAL(signalIpkgMessage(const QString &)), 0, 0 ); }; break; case OPackage::Install : { connect( this, SIGNAL(signalIpkgMessage(const QString &)), receiver, slotOutput ); for ( QStringList::ConstIterator it = parameters.begin(); it != parameters.end(); ++it ) { ipkg_packages_install( &m_ipkgArgs, (*it) ); } if ( destination != "root" ) linkPackageDir( destination ); + disconnect( this, SIGNAL(signalIpkgMessage(const QString &)), 0, 0 ); }; break; case OPackage::Remove : { connect( this, SIGNAL(signalIpkgMessage(const QString &)), receiver, slotOutput ); // Get list of destinations for unlinking of packages not installed to root @@ -481,30 +484,34 @@ bool OIpkg::executeCommand( OPackage::Command command, const QStringList ¶me { unlinkPackage( (*it), destList ); ipkg_packages_remove( &m_ipkgArgs, (*it), true ); } delete destList; + disconnect( this, SIGNAL(signalIpkgMessage(const QString &)), 0, 0 ); }; break; case OPackage::Download : { connect( this, SIGNAL(signalIpkgMessage(const QString &)), receiver, slotOutput ); for ( QStringList::ConstIterator it = parameters.begin(); it != parameters.end(); ++it ) { ipkg_packages_download( &m_ipkgArgs, (*it) ); } + disconnect( this, SIGNAL(signalIpkgMessage(const QString &)), 0, 0 ); }; break; case OPackage::Info : { connect( this, SIGNAL(signalIpkgStatus(const QString &)), receiver, slotOutput ); ipkg_packages_info( &m_ipkgArgs, (*parameters.begin()), &fIpkgStatus, 0l ); + disconnect( this, SIGNAL(signalIpkgStatus(const QString &)), 0, 0 ); }; break; case OPackage::Files : { connect( this, SIGNAL(signalIpkgList(const QString &)), receiver, slotOutput ); ipkg_package_files( &m_ipkgArgs, (*parameters.begin()), &fIpkgFiles, 0l ); + disconnect( this, SIGNAL(signalIpkgList(const QString &)), 0, 0 ); }; break; default : break; }; return true; |