author | drw <drw> | 2003-02-25 00:39:29 (UTC) |
---|---|---|
committer | drw <drw> | 2003-02-25 00:39:29 (UTC) |
commit | 8d80ed4f9cf8051b5566aaf3f639c76fe7d6de7c (patch) (side-by-side diff) | |
tree | 95ac0e3df097d1d2af81dbb543502b0682043fc0 | |
parent | 45fc2c7089de9bbb7887ba9bdb56c974b19c1caf (diff) | |
download | opie-8d80ed4f9cf8051b5566aaf3f639c76fe7d6de7c.zip opie-8d80ed4f9cf8051b5566aaf3f639c76fe7d6de7c.tar.gz opie-8d80ed4f9cf8051b5566aaf3f639c76fe7d6de7c.tar.bz2 |
Fix for bug #707 - remove package from status file only if package removal was successful.
-rw-r--r-- | noncore/settings/aqpkg/ipkg.cpp | 13 | ||||
-rw-r--r-- | noncore/settings/aqpkg/ipkg.h | 1 |
2 files changed, 8 insertions, 6 deletions
diff --git a/noncore/settings/aqpkg/ipkg.cpp b/noncore/settings/aqpkg/ipkg.cpp index 51eca8b..e66c02d 100644 --- a/noncore/settings/aqpkg/ipkg.cpp +++ b/noncore/settings/aqpkg/ipkg.cpp @@ -59,2 +59,3 @@ bool Ipkg :: runIpkg( ) { + error = false; bool ret = false; @@ -170,8 +171,2 @@ bool Ipkg :: runIpkg( ) - // Finally, if we are removing a package, remove its entry from the <destdir>/usr/lib/ipkg/status file - // to workaround an ipkg bug which stops reinstall to a different location - if ( option == "remove" ) - removeStatusEntry(); - - emit outputText( "Finished" ); @@ -342,2 +337,3 @@ void Ipkg::commandStderr(OProcess*, char *buffer, int buflen) buffer[0] = '\0'; + error = true; } @@ -346,2 +342,7 @@ void Ipkg::processFinished() { + // Finally, if we are removing a package, remove its entry from the <destdir>/usr/lib/ipkg/status file + // to workaround an ipkg bug which stops reinstall to a different location + if ( !error && option == "remove" ) + removeStatusEntry(); + delete proc; diff --git a/noncore/settings/aqpkg/ipkg.h b/noncore/settings/aqpkg/ipkg.h index f08667b..d49bb04 100644 --- a/noncore/settings/aqpkg/ipkg.h +++ b/noncore/settings/aqpkg/ipkg.h @@ -67,2 +67,3 @@ private: bool aborted; + bool error; QString option; |