git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] string-list.h: Add a value to string_list initializer lists

From
Tanay Abhra <tanayabh@gmail.com>
Date
Jun 2, 2014, 08:58 UTC
Message-ID
<1401699504-29826-1-git-send-email-tanayabh@gmail.com>

Add a NULL value in the end of STRING_LIST_INIT_NODUP and STRING_LIST_DUP to initialize `compare_strings_fn`.

Signed-off-by: Tanay Abhra <tanayabh@gmail.com>
---
When I used a malloced string_list to play around with string-list API and
used the default init_list, it caused a seg fault. After an hour of debugging
I saw that comapre_strings_fn should be initialized to NULL. In C, even an
incomplete initialzer initializes every value to NULl or 0, so in normal
usage in the codebase this problem never occurs. Still it is better to be
thorough.
 string-list.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/string-list.h b/string-list.h
index de6769c..87ee419 100644
--- a/string-list.h
+++ b/string-list.h
@@ -15,8 +15,8 @@ struct string_list {
 	compare_strings_fn cmp; /* NULL uses strcmp() */
 };
 
-#define STRING_LIST_INIT_NODUP { NULL, 0, 0, 0 }
-#define STRING_LIST_INIT_DUP   { NULL, 0, 0, 1 }
+#define STRING_LIST_INIT_NODUP { NULL, 0, 0, 0, NULL }
+#define STRING_LIST_INIT_DUP   { NULL, 0, 0, 1, NULL }
 
 void print_string_list(const struct string_list *p, const char *text);
 void string_list_clear(struct string_list *list, int free_util);
-- 
1.9.0.GIT
Next: Matthieu Moy
Message 1 of 3 in “string-list.h: Add a value to string_list initializer lists”
  1. string-list.h: Add a value to string_list initializer listsTanay Abhra, Jun 2, 2014
  2. Matthieu MoyJun 2, 2014
  3. Junio C HamanoJun 2, 2014

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.