Do the right thing if we have a version but no constraint.
[oweals/opkg-lede.git] / libopkg / pkg_depends.c
index 67924bd75cb46d6e1453b92504873f389ccf8835..998d08544300fcc69117d389587c6e8a77368762 100644 (file)
@@ -647,26 +647,38 @@ void buildDepends(hash_table_t * hash, pkg_t * pkg)
 
      for(i = 0; i < pkg->pre_depends_count; i++){
          parseDepends(depends, hash, pkg->pre_depends_str[i]);
+         free(pkg->pre_depends_str[i]);
          depends->type = PREDEPEND;
          depends++;
      }
+     if (pkg->pre_depends_str)
+            free(pkg->pre_depends_str);
 
      for(i = 0; i < pkg->depends_count; i++){
          parseDepends(depends, hash, pkg->depends_str[i]);
+         free(pkg->depends_str[i]);
          depends++;
      }
+     if (pkg->depends_str)
+            free(pkg->depends_str);
 
      for(i = 0; i < pkg->recommends_count; i++){
          parseDepends(depends, hash, pkg->recommends_str[i]);
+         free(pkg->recommends_str[i]);
          depends->type = RECOMMEND;
          depends++;
      }
+     if(pkg->recommends_str)
+         free(pkg->recommends_str);
 
      for(i = 0; i < pkg->suggests_count; i++){
          parseDepends(depends, hash, pkg->suggests_str[i]);
+         free(pkg->suggests_str[i]);
          depends->type = SUGGEST;
          depends++;
      }
+     if(pkg->suggests_str)
+         free(pkg->suggests_str);
 }
 
 const char*
@@ -714,7 +726,7 @@ pkg_depend_str(pkg_t *pkg, int index)
 
                len += strlen(dep->pkg->name);
 
-               if (dep->constraint != NONE) {
+               if (dep->version) {
                        len += 2; /* space, left parenthesis */
                        len += 3; /* constraint string (<=, >=, etc), space */
                        len += strlen(dep->version);
@@ -733,7 +745,7 @@ pkg_depend_str(pkg_t *pkg, int index)
 
                strncat(str, dep->pkg->name, len);
 
-               if (dep->constraint != NONE) {
+               if (dep->version) {
                        strncat(str, " (", len);
                        strncat(str, constraint_to_str(dep->constraint), len);
                        strncat(str, dep->version, len);