diff options
author | Timo Teräs <timo.teras@iki.fi> | 2023-10-15 19:37:08 +0300 |
---|---|---|
committer | Timo Teräs <timo.teras@iki.fi> | 2023-10-15 19:37:08 +0300 |
commit | 9410e486ce6b95b22b42ea5d7c712c17962aade5 (patch) | |
tree | 82eb8eb768a563734d95bea63c5bef3dbe053d51 | |
parent | c1e0368e5429519bbcb2fb99cf952e7d1406714b (diff) | |
download | apk-tools-9410e486ce6b95b22b42ea5d7c712c17962aade5.tar.gz apk-tools-9410e486ce6b95b22b42ea5d7c712c17962aade5.tar.bz2 apk-tools-9410e486ce6b95b22b42ea5d7c712c17962aade5.tar.xz apk-tools-9410e486ce6b95b22b42ea5d7c712c17962aade5.zip |
adb, extract_v3: fix xattr handling with zero bytes
fixes commit 718c44d0 "adb, mkpkg, extract_v3: add support for xattrs"
fixes #10859
-rw-r--r-- | src/apk_adb.c | 2 | ||||
-rw-r--r-- | src/extract_v3.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/src/apk_adb.c b/src/apk_adb.c index 6dfb301..60291aa 100644 --- a/src/apk_adb.c +++ b/src/apk_adb.c @@ -119,7 +119,7 @@ static apk_blob_t xattr_tostring(struct adb *db, adb_val_t val, char *buf, size_ apk_blob_t b = adb_r_blob(db, val), to = APK_BLOB_PTR_LEN(buf, bufsz), k, v; if (APK_BLOB_IS_NULL(b)) return b; - if (!apk_blob_rsplit(b, 0, &k, &v)) return APK_BLOB_NULL; + if (!apk_blob_split(b, APK_BLOB_BUF(""), &k, &v)) return APK_BLOB_NULL; apk_blob_push_blob(&to, k); apk_blob_push_blob(&to, APK_BLOB_PTR_LEN("=", 1)); diff --git a/src/extract_v3.c b/src/extract_v3.c index d98fe99..2ee31c0 100644 --- a/src/extract_v3.c +++ b/src/extract_v3.c @@ -37,7 +37,7 @@ static void apk_extract_v3_acl(struct apk_file_info *fi, struct adb_obj *o, stru apk_xattr_array_resize(&fi->xattrs, adb_ra_num(&xa)); for (i = ADBI_FIRST; i <= adb_ra_num(&xa); i++) { x = adb_ro_blob(&xa, i); - apk_blob_rsplit(x, 0, &key, &value); + apk_blob_split(x, APK_BLOB_BUF(""), &key, &value); fi->xattrs->item[i-1] = (struct apk_xattr) { .name = key.ptr, |