expo: Correct the logic for duplicate-ID detection
Update scene_txt_str() to account for the possibility that the passed-in
str_id may be 0
Signed-off-by: Simon Glass <sjg@chromium.org>
diff --git a/boot/scene.c b/boot/scene.c
index 9c4466c..8e5d3aa 100644
--- a/boot/scene.c
+++ b/boot/scene.c
@@ -176,8 +176,9 @@
ret = expo_str(scn->expo, name, str_id, str);
if (ret < 0)
return log_msg_ret("str", ret);
- else if (ret != str_id)
+ if (str_id && ret != str_id)
return log_msg_ret("id", -EEXIST);
+ str_id = ret;
ret = scene_obj_add(scn, name, id, SCENEOBJT_TEXT,
sizeof(struct scene_obj_txt),