diff options
-rwxr-xr-x | scripts/cleanup | 2 | ||||
-rw-r--r-- | web/lib/pkgfuncs.inc | 15 |
2 files changed, 16 insertions, 1 deletions
diff --git a/scripts/cleanup b/scripts/cleanup index 4fc9ea2d..21c913a1 100755 --- a/scripts/cleanup +++ b/scripts/cleanup @@ -25,7 +25,7 @@ exec('ls ' . INCOMING_DIR, $files); $count = 0; foreach ($files as $pkgname) { - if (!package_exists($pkgname)) { + if (package_location($pkgname) != 'unsupported') { echo 'Removing ' . INCOMING_DIR . "$pkgname\n"; system('rm -r ' . INCOMING_DIR . $pkgname); $count++; diff --git a/web/lib/pkgfuncs.inc b/web/lib/pkgfuncs.inc index b95f910d..9d7a0db7 100644 --- a/web/lib/pkgfuncs.inc +++ b/web/lib/pkgfuncs.inc @@ -84,6 +84,21 @@ function pkgLocations() { return $locs; } +# Return the repository name for a particular package. +function package_location($name="") { + if (!$name) {return NULL;} + $dbh = db_connect(); + $q = "SELECT PackageLocations.Location FROM Packages "; + $q.= "LEFT JOIN PackageLocations ON "; + $q.= "Packages.LocationID = PackageLocations.ID "; + $q.= "WHERE Name = '".mysql_real_escape_string($name)."' "; + $q.= "AND DummyPkg = 0"; + $result = db_query($q, $dbh); + if (!$result) {return NULL;} + $row = mysql_fetch_row($result); + return $row[0]; +} + # check to see if the package name exists # function package_exists($name="") { |