summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTimo Teräs <timo.teras@iki.fi>2023-10-15 19:37:08 +0300
committerTimo Teräs <timo.teras@iki.fi>2023-10-15 19:37:08 +0300
commit9410e486ce6b95b22b42ea5d7c712c17962aade5 (patch)
tree82eb8eb768a563734d95bea63c5bef3dbe053d51
parentc1e0368e5429519bbcb2fb99cf952e7d1406714b (diff)
downloadapk-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.c2
-rw-r--r--src/extract_v3.c2
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,