diff --git a/daemon/control_ng.c b/daemon/control_ng.c index ba91bb86f..9b6220deb 100644 --- a/daemon/control_ng.c +++ b/daemon/control_ng.c @@ -130,7 +130,7 @@ static void bencode_list_iter(const ng_parser_t *parser, bencode_item_t *list, str s; unsigned int idx = 0; for (bencode_item_t *it = list->child; it; it = it->sibling) { - if (bencode_get_str(it, &s)) + if (bencode_get_str(it, &s) && str_callback) str_callback(&s, idx, arg); else if (item_callback) item_callback(parser, it, arg); diff --git a/daemon/control_ng_flags_parser.c b/daemon/control_ng_flags_parser.c index f5a9a97d7..3807d9e90 100644 --- a/daemon/control_ng_flags_parser.c +++ b/daemon/control_ng_flags_parser.c @@ -182,6 +182,8 @@ static void rtpp_list_iter(const ng_parser_t *parser, rtpp_pos *pos, if (str_callback) str_callback(&pos->cur, idx++, arg); + else if (item_callback) + item_callback(parser, pos, arg); if (end) break; goto next;