From 28bb21263014496ad6e6840703eaec58c5d4a827 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Mon, 17 Aug 2020 17:50:42 +0200 Subject: [PATCH] policy-node: improve move Don't try to do work when not needed --- src/examples/media-session/policy-node.c | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/src/examples/media-session/policy-node.c b/src/examples/media-session/policy-node.c index dcf96970d..4d00ba914 100644 --- a/src/examples/media-session/policy-node.c +++ b/src/examples/media-session/policy-node.c @@ -784,17 +784,16 @@ static int metadata_property(void *object, uint32_t subject, impl->default_video_source = value ? (uint32_t)atoi(value) : SPA_ID_INVALID; } } else { - struct node *src_node, *dst_node = NULL; - - src_node = find_node_by_id(impl, subject); - if (strcmp(key, "target.node") == 0 && value != NULL) { - dst_node = find_node_by_id(impl, atoi(value)); - } - if (src_node && dst_node) - handle_move(impl, src_node, dst_node); - } + struct node *src_node, *dst_node; + dst_node = find_node_by_id(impl, atoi(value)); + src_node = dst_node ? find_node_by_id(impl, subject) : NULL; + + if (dst_node && src_node) + handle_move(impl, src_node, dst_node); + } + } return 0; }