summaryrefslogtreecommitdiff
authordrw <drw>2003-04-20 23:58:21 (UTC)
committer drw <drw>2003-04-20 23:58:21 (UTC)
commit9163bfcc25b78477a75a153f2a75be30ad297c6a (patch) (side-by-side diff)
tree668e10a9bb0ca7937e3f630a62d3afbbbbf06438
parent6b78c023f67433b8f38d9e77598b8530988bfec8 (diff)
downloadopie-9163bfcc25b78477a75a153f2a75be30ad297c6a.zip
opie-9163bfcc25b78477a75a153f2a75be30ad297c6a.tar.gz
opie-9163bfcc25b78477a75a153f2a75be30ad297c6a.tar.bz2
Finally fixed it so that packages are not incorrectly marked as having an update available
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--noncore/settings/aqpkg/mainwin.cpp6
-rw-r--r--noncore/settings/aqpkg/package.cpp5
-rw-r--r--noncore/settings/aqpkg/package.h1
-rw-r--r--noncore/settings/aqpkg/server.cpp2
4 files changed, 7 insertions, 7 deletions
diff --git a/noncore/settings/aqpkg/mainwin.cpp b/noncore/settings/aqpkg/mainwin.cpp
index 6ea619c..fb40d52 100644
--- a/noncore/settings/aqpkg/mainwin.cpp
+++ b/noncore/settings/aqpkg/mainwin.cpp
@@ -640,6 +640,5 @@ void MainWindow :: serverSelected( int, bool raiseProgress )
if ( showUpgradedPkgs )
{
- if ( !package->isInstalled() ||
- compareVersions( package->getInstalledVersion(), package->getVersion() ) != 1 )
+ if ( !package->isInstalled() || !package->getNewVersionAvailable() )
continue;
}
@@ -664,6 +663,5 @@ void MainWindow :: serverSelected( int, bool raiseProgress )
// If a different version of package is available, show update available icon
// Otherwise, show installed icon
- if ( package->getVersion() != package->getInstalledVersion() &&
- compareVersions( package->getInstalledVersion(), package->getVersion() ) == 1)
+ if ( package->getNewVersionAvailable())
{
diff --git a/noncore/settings/aqpkg/package.cpp b/noncore/settings/aqpkg/package.cpp
index 83e0706..3395870 100644
--- a/noncore/settings/aqpkg/package.cpp
+++ b/noncore/settings/aqpkg/package.cpp
@@ -51,4 +51,5 @@ Package::Package( char *name )
installed = false;
installedTo = 0;
+ differentVersionAvailable = false;
}
@@ -90,5 +91,5 @@ void Package :: setLocalPackage( Package *p )
if ( localPackage )
- if ( localPackage->getVersion() != getVersion() )
+ if ( localPackage->getVersion() < getVersion() && !installed )
differentVersionAvailable = true;
else
@@ -101,5 +102,5 @@ void Package :: setVersion( const QString &v )
if ( localPackage )
- if ( localPackage->getVersion() != getVersion() )
+ if ( localPackage->getVersion() < getVersion() && !installed )
differentVersionAvailable = true;
else
diff --git a/noncore/settings/aqpkg/package.h b/noncore/settings/aqpkg/package.h
index f5a132f..110ae91 100644
--- a/noncore/settings/aqpkg/package.h
+++ b/noncore/settings/aqpkg/package.h
@@ -57,4 +57,5 @@ public:
QString getPackageSize() { return packageSize; }
QString getSection() { return section; }
+ bool getNewVersionAvailable() { return differentVersionAvailable; }
bool isInstalled();
diff --git a/noncore/settings/aqpkg/server.cpp b/noncore/settings/aqpkg/server.cpp
index 9a239a5..e2b8096 100644
--- a/noncore/settings/aqpkg/server.cpp
+++ b/noncore/settings/aqpkg/server.cpp
@@ -185,5 +185,5 @@ void Server :: readPackageFile( Server *local, bool clearAll, bool installingToR
else
{
- if (currPackage->getStatus().find( "deinstall" ) != -1 )
+ if ( currPackage->isInstalled() )
currPackage->setInstalledTo( dest );
}