From f5d3a424d194410acb3f46b3a0d5370fb679d743 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Thu, 19 Sep 2019 07:16:49 +0200 Subject: [PATCH] procd: fix invalid JSON filter expression in procd_running() Since service and instance names may contain characters which are not allowed in JSON path labels, such as dashes or spaces, change the filter expression to array square bracket notation to properly match these cases as well. Fixes: 2c3dd70741 ("procd: add procd_running() helper for checking running state") Signed-off-by: Jo-Philipp Wich (cherry picked from commit c933b6d22478c1113629ef549beea6337f978d62) --- package/system/procd/Makefile | 2 +- package/system/procd/files/procd.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package/system/procd/Makefile b/package/system/procd/Makefile index 22f02fb753..de593075e4 100644 --- a/package/system/procd/Makefile +++ b/package/system/procd/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=procd -PKG_RELEASE:=1 +PKG_RELEASE:=2 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL=$(PROJECT_GIT)/procd.git diff --git a/package/system/procd/files/procd.sh b/package/system/procd/files/procd.sh index 8d6d406012..529ded1795 100644 --- a/package/system/procd/files/procd.sh +++ b/package/system/procd/files/procd.sh @@ -412,7 +412,7 @@ procd_running() { json_init json_add_string name "$service" - running=$(_procd_ubus_call list | jsonfilter -e "@.$service.instances.${instance}.running") + running=$(_procd_ubus_call list | jsonfilter -e "@['$service'].instances['$instance'].running") [ "$running" = "true" ] } -- 2.25.1