Thread (3 messages) flat view 3 messages, 3 authors, 2021-09-01
STALE1803d REVIEWED: 1 (0M)

1 review trailer.

[Bluez PATCH v1] plugin/admin: fix set empty allowlist no persistence issue

From: Howard Chung <hidden>
Date: 2021-08-31 05:39:10
Subsystem: the rest · Maintainer: Linus Torvalds

From: Yun-Hao Chung <redacted>

This patch fixes a bug when setting empty service allowlist, the
allowlist sets successfully but it fails to be stored in the file.

Reviewed-by: Miao-chen Chou <redacted>
---
Test procedure:
1. set empty service allowlist via bluetoothctl
2. cat /var/lib/bluetooth/admin_policy_settings
3. restart bluetoothd
4. get service allowlist via bluetoothctl

 plugins/admin.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/plugins/admin.c b/plugins/admin.c
index aea33cb71ac2..02fec04568ba 100644
--- a/plugins/admin.c
+++ b/plugins/admin.c
@@ -196,12 +196,17 @@ static char **new_uuid_strings(struct queue *allowlist, gsize *num)
 	char **uuid_strs = NULL;
 	gsize i = 0, allowlist_num;
 
+	allowlist_num = queue_length(allowlist);
+	if (!allowlist_num) {
+		*num = 0;
+		return NULL;
+	}
+
 	/* Set num to a non-zero number so that whoever call this could know if
 	 * this function success or not
 	 */
 	*num = 1;
 
-	allowlist_num = queue_length(allowlist);
 	uuid_strs = g_try_malloc_n(allowlist_num, sizeof(char *));
 	if (!uuid_strs)
 		return NULL;
-- 
2.33.0.259.gc128427fd7-goog
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help