Also copy the checksums in repo_add_rpmdb_reffp
authorMichael Schroeder <mls@suse.de>
Mon, 16 Dec 2013 14:57:11 +0000 (15:57 +0100)
committerMichael Schroeder <mls@suse.de>
Mon, 16 Dec 2013 14:57:11 +0000 (15:57 +0100)
Sorry. Also bumps the RPMDB_COOKIE_VERSION so old broken solv
files don't get reused.

ext/repo_rpmdb.c

index 16457db..9d6d830 100644 (file)
@@ -50,7 +50,8 @@
 
 /* 3: added triggers */
 /* 4: fixed triggers */
-#define RPMDB_COOKIE_VERSION 4
+/* 5: fixed checksum copying */
+#define RPMDB_COOKIE_VERSION 5
 
 #define TAG_NAME               1000
 #define TAG_VERSION            1001
@@ -1468,6 +1469,11 @@ solvable_copy_cb(void *vcbdata, Solvable *r, Repodata *fromdata, Repokey *key, K
       cbdata->handle = repodata_new_handle(data);
       repodata_add_flexarray(data, cbdata->subhandle, keyname, cbdata->handle);
       break;
+    case REPOKEY_TYPE_MD5:
+    case REPOKEY_TYPE_SHA1:
+    case REPOKEY_TYPE_SHA256:
+      repodata_set_bin_checksum(data, handle, keyname, key->type, (const unsigned char *)kv->str);
+      break;
     default:
       break;
     }