Index: html/pkgsubmit.php
===================================================================
--- html/pkgsubmit.php (revisão 319)
+++ html/pkgsubmit.php (cópia de trabalho)
@@ -87,7 +87,8 @@
#
$upload_file = $UPLOAD_DIR . $pkg_name;
- if (move_uploaded_file($_FILES["pfile"]["tmp_name"], $upload_file)) {
+
+ if (move_uploaded_file($_FILES["pfile"]["tmp_name"], $upload_file)) {
# ok, we can proceed
#
if (file_exists($INCOMING_DIR . $pkg_name)) {
@@ -427,9 +428,11 @@
# update package depends
#
$depends = explode(" ", $new_pkgbuild['depends']);
- while (list($k, $v) = each($depends)) {
- $q = "INSERT INTO PackageDepends (PackageID, DepPkgID) VALUES (";
+
+ while (list($k, $v) = each($depends)) {
+ $q = "INSERT INTO PackageDepends (PackageID, DepPkgID, DepCondition) VALUES (";
$deppkgname = preg_replace("/[<>]?=.*/", "", $v);
+ $depcondition = str_replace($deppkgname, "", $v);
# Solve the problem with comments and deps
# added by: dsa
@@ -437,7 +440,12 @@
break;
$deppkgid = create_dummy($deppkgname, $_COOKIE['AURSID']);
- $q .= $pdata["ID"].", ".$deppkgid.")";
+
+ if(!empty($depcondition))
+ $q .= $pdata["ID"].", ".$deppkgid.", '".$depcondition."')";
+ else
+ $q .= $pdata["ID"].", ".$deppkgid.", '')";
+
db_query($q, $dbh);
}
Index: lib/pkgfuncs.inc
===================================================================
--- lib/pkgfuncs.inc (revisão 319)
+++ lib/pkgfuncs.inc (cópia de trabalho)
@@ -139,7 +139,7 @@
$deps = array();
if ($pkgid) {
$dbh = db_connect();
- $q = "SELECT DepPkgID, Name, DummyPkg FROM PackageDepends, Packages ";
+ $q = "SELECT DepPkgID, Name, DummyPkg, DepCondition FROM PackageDepends, Packages ";
$q.= "WHERE PackageDepends.DepPkgID = Packages.ID ";
$q.= "AND PackageDepends.PackageID = ".mysql_escape_string($pkgid);
$q.= " ORDER BY Name";
@@ -402,8 +402,11 @@
}
}
reset($pkgsearch_vars);
- if ($darr[2] == 0) print $url."'>".$darr[1]."
\n";
- else print "".$darr[1]."
\n";
+
+ // $darr[3] is the DepCondition
+
+ if ($darr[2] == 0) print $url."'>".$darr[1].$darr[3]."
\n";
+ else print "".$darr[1].$darr[3]."
\n";
}
print "\n";
print "";