It is more convenient to put strings in an abuf so they can easily be
resized. Adjust the struct accordingly.

Signed-off-by: Simon Glass <s...@chromium.org>
---

 boot/expo.c    | 4 ++--
 include/expo.h | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/boot/expo.c b/boot/expo.c
index ba052df932c..ee635116abc 100644
--- a/boot/expo.c
+++ b/boot/expo.c
@@ -86,7 +86,7 @@ int expo_str(struct expo *exp, const char *name, uint id, 
const char *str)
                return log_msg_ret("obj", -ENOMEM);
 
        estr->id = resolve_id(exp, id);
-       estr->str = str;
+       abuf_init_const(&estr->buf, str, strlen(str) + 1);
        list_add_tail(&estr->sibling, &exp->str_head);
 
        return estr->id;
@@ -98,7 +98,7 @@ const char *expo_get_str(struct expo *exp, uint id)
 
        list_for_each_entry(estr, &exp->str_head, sibling) {
                if (estr->id == id)
-                       return estr->str;
+                       return estr->buf.data;
        }
 
        return NULL;
diff --git a/include/expo.h b/include/expo.h
index 84dc77f771e..b6de0310071 100644
--- a/include/expo.h
+++ b/include/expo.h
@@ -134,12 +134,12 @@ struct expo {
  * struct expo_string - a string that can be used in an expo
  *
  * @id: ID number of the string
- * @str: String
+ * @buf: String (contains nul terminator)
  * @sibling: Node to link this object to its siblings
  */
 struct expo_string {
        uint id;
-       const char *str;
+       struct abuf buf;
        struct list_head sibling;
 };
 
-- 
2.43.0

Reply via email to