]> git.ipfire.org Git - thirdparty/libsolv.git/commitdiff
rename repodata_delete to repodata_set_deleted, add repo_set_deleted and solvable_set...
authorMichael Schroeder <mls@suse.de>
Tue, 6 Nov 2012 11:16:35 +0000 (12:16 +0100)
committerMichael Schroeder <mls@suse.de>
Tue, 6 Nov 2012 11:16:35 +0000 (12:16 +0100)
examples/pysolv
src/libsolv.ver
src/repo.c
src/repo.h
src/repodata.c
src/repodata.h
src/solvable.c
src/solvable.h

index 1400be8df0822aecb16093edd41af9d2363bff18..ddf0b9f813b319e0e061835852f52351cb295336 100755 (executable)
@@ -931,7 +931,7 @@ if cmd == 'install' or cmd == 'erase' or cmd == 'up' or cmd == 'dup' or cmd == '
             # argh, p is just the name of the package
             if p in erasenamehelper:
                 p = erasenamehelper[p]
-                print "erase", p
+            print "erase", p
     runproblems = ts.run(runCallback, '')
     if runproblems:
         print runproblems
index f0bb65048b6954c871e107b54482faf6d02dabbe..b19792ffface66bbcea7f8a1b8e72d3ae38c4f85 100644 (file)
@@ -155,6 +155,7 @@ SOLV_1.0 {
                repo_matchvalue;
                repo_reserve_ids;
                repo_search;
+               repo_set_deleted;
                repo_set_deparray;
                repo_set_id;
                repo_set_idarray;
@@ -173,8 +174,6 @@ SOLV_1.0 {
                repodata_add_poolstr_array;
                repodata_chk2str;
                repodata_create_stubs;
-               repodata_delete;
-               repodata_delete_uninternalized;
                repodata_dir2str;
                repodata_disable_paging;
                repodata_empty;
@@ -208,6 +207,8 @@ SOLV_1.0 {
                repodata_set_checksum;
                repodata_set_constant;
                repodata_set_constantid;
+               repodata_set_deleted;
+               repodata_set_deleted_uninternalized;
                repodata_set_id;
                repodata_set_idarray;
                repodata_set_location;
@@ -281,6 +282,7 @@ SOLV_1.0 {
                solvable_lookup_type;
                solvable_lookup_void;
                solvable_selfprovidedep;
+               solvable_set_deleted;
                solvable_set_deparray;
                solvable_set_id;
                solvable_set_idarray;
index 594295f1dba9a10ec97a72a01222ad2d07276573..ed845ef3f9c39d245ab7112786b8312f584971a6 100644 (file)
@@ -1612,6 +1612,62 @@ repo_set_idarray(Repo *repo, Id p, Id keyname, Queue *q)
   repo_set_deparray(repo, p, keyname, q, 0);
 }
 
+void
+repo_set_deleted(Repo *repo, Id p, Id keyname)
+{
+  Repodata *data;
+  if (p >= 0)
+    {
+      Solvable *s = repo->pool->solvables + p;
+      switch (keyname)
+       {
+       case SOLVABLE_NAME:
+         s->name = 0;
+         return;
+       case SOLVABLE_ARCH:
+         s->arch = 0;
+         return;
+       case SOLVABLE_EVR:
+         s->evr = 0;
+         return;
+       case SOLVABLE_VENDOR:
+         s->vendor = 0;
+         return;
+        case RPM_RPMDBID:
+         if (repo->rpmdbid)
+           repo->rpmdbid[p] = 0;
+         return;
+       case SOLVABLE_PROVIDES:
+         s->provides = 0;
+         return;
+       case SOLVABLE_OBSOLETES:
+         s->obsoletes = 0;
+         return;
+       case SOLVABLE_CONFLICTS:
+         s->conflicts = 0;
+         return;
+       case SOLVABLE_REQUIRES:
+         s->requires = 0;
+         return;
+       case SOLVABLE_RECOMMENDS:
+         s->recommends = 0;
+         return;
+       case SOLVABLE_SUGGESTS:
+         s->suggests = 0;
+         return;
+       case SOLVABLE_SUPPLEMENTS:
+         s->supplements = 0;
+       case SOLVABLE_ENHANCES:
+         s->enhances = 0;
+         return;
+       default:
+         break;
+       }
+    }
+  data = repo_last_repodata(repo);
+  repodata_set_deleted(data, p, keyname);
+}
+
 void
 repo_internalize(Repo *repo)
 {
index d839157dcd70acd8422d5c07838b2ed87414b63e..90ad055d9850a466675f74563d3d8d9d46fc2f7d 100644 (file)
@@ -142,6 +142,7 @@ void repo_add_idarray(Repo *repo, Id p, Id keyname, Id id);
 void repo_add_deparray(Repo *repo, Id p, Id keyname, Id dep, Id marker);
 void repo_set_idarray(Repo *repo, Id p, Id keyname, Queue *q);
 void repo_set_deparray(Repo *repo, Id p, Id keyname, Queue *q, Id marker);
+void repo_set_deleted(Repo *repo, Id p, Id keyname);
  
 void repo_internalize(Repo *repo);
 void repo_disable_paging(Repo *repo);
index 520984cdb11a6f7c19b027a7564bf31f79ffe3a3..e91fffb82f7aae013698ff89c07289bd226df386 100644 (file)
@@ -2449,7 +2449,7 @@ repodata_add_flexarray(Repodata *data, Id solvid, Id keyname, Id ghandle)
 }
 
 void
-repodata_delete_uninternalized(Repodata *data, Id solvid, Id keyname)
+repodata_set_deleted_uninternalized(Repodata *data, Id solvid, Id keyname)
 {
   Id *pp, *ap, **app;
   app = repodata_get_attrp(data, solvid);
@@ -2475,7 +2475,7 @@ repodata_delete_uninternalized(Repodata *data, Id solvid, Id keyname)
 
 /* XXX: does not work correctly, needs fix in iterators! */
 void
-repodata_delete(Repodata *data, Id solvid, Id keyname)
+repodata_set_deleted(Repodata *data, Id solvid, Id keyname)
 {
   Repokey key;
   key.name = keyname;
index fb755bc53310b379cb270e922917873b32d44df9..8e9e2711d8f181e3f28066005fa040f1c4ddc8f0 100644 (file)
@@ -262,8 +262,8 @@ void repodata_add_poolstr_array(Repodata *data, Id solvid, Id keyname, const cha
 void repodata_add_fixarray(Repodata *data, Id solvid, Id keyname, Id ghandle);
 void repodata_add_flexarray(Repodata *data, Id solvid, Id keyname, Id ghandle);
 
-void repodata_delete(Repodata *data, Id solvid, Id keyname);
-void repodata_delete_uninternalized(Repodata *data, Id solvid, Id keyname);
+void repodata_set_deleted(Repodata *data, Id solvid, Id keyname);
+void repodata_set_deleted_uninternalized(Repodata *data, Id solvid, Id keyname);
 
 /* 
  merge/swap attributes from one solvable to another
index 63cc9f2b651841b8271ec428a1dc2b9130e62515..2a73e0a6d838bee5741aaf4f9a8cd3d167c05dff 100644 (file)
@@ -733,3 +733,8 @@ solvable_set_deparray(Solvable *s, Id keyname, Queue *q, Id marker)
   repo_set_deparray(s->repo, s - s->repo->pool->solvables, keyname, q, marker);
 }
 
+void
+solvable_set_deleted(Solvable *s, Id keyname)
+{
+  repo_set_deleted(s->repo, s - s->repo->pool->solvables, keyname);
+}
index 955464ec5ff697308ccc1b399629629122eea009..3ef9fe55e6f4db059e7d4bf2061b184244ff166c 100644 (file)
@@ -70,6 +70,7 @@ void solvable_add_idarray(Solvable *s, Id keyname, Id id);
 void solvable_add_deparray(Solvable *s, Id keyname, Id dep, Id marker);
 void solvable_set_idarray(Solvable *s, Id keyname, Queue *q);
 void solvable_set_deparray(Solvable *s, Id keyname, Queue *q, Id marker);
+void solvable_set_deleted(Solvable *s, Id keyname);
 
 int solvable_identical(Solvable *s1, Solvable *s2);
 Id solvable_selfprovidedep(Solvable *s);