fix rpmdbid handling in repo_unset and repo_set_num
authorMichael Schroeder <mls@suse.de>
Tue, 13 Nov 2012 17:51:16 +0000 (18:51 +0100)
committerMichael Schroeder <mls@suse.de>
Tue, 13 Nov 2012 17:51:16 +0000 (18:51 +0100)
src/repo.c

index 39e6ab8..2cc386a 100644 (file)
@@ -1429,7 +1429,7 @@ repo_set_num(Repo *repo, Id p, Id keyname, unsigned long long num)
        {
          if (!repo->rpmdbid)
            repo->rpmdbid = repo_sidedata_create(repo, sizeof(Id));
-         repo->rpmdbid[p] = num;
+         repo->rpmdbid[p - repo->start] = num;
          return;
        }
     }
@@ -1635,7 +1635,7 @@ repo_unset(Repo *repo, Id p, Id keyname)
          return;
         case RPM_RPMDBID:
          if (repo->rpmdbid)
-           repo->rpmdbid[p] = 0;
+           repo->rpmdbid[p - repo->start] = 0;
          return;
        case SOLVABLE_PROVIDES:
          s->provides = 0;