On 2/23/2024 1:01 AM, Philippe Mathieu-Daudé wrote: > On 22/2/24 22:47, Steve Sistare wrote: >> Generalize hmp_split_at_comma() to take any delimiter string, rename >> as str_split(), and move it to util/strList.c. >> >> No functional change. >> >> Signed-off-by: Steve Sistare <steven.sist...@oracle.com> >> --- >> include/monitor/hmp.h | 1 - >> include/qemu/strList.h | 24 ++++++++++++++++++++++++ >> monitor/hmp-cmds.c | 19 ------------------- >> net/net-hmp-cmds.c | 3 ++- >> stats/stats-hmp-cmds.c | 3 ++- >> util/meson.build | 1 + >> util/strList.c | 24 ++++++++++++++++++++++++ >> 7 files changed, 53 insertions(+), 22 deletions(-) >> create mode 100644 include/qemu/strList.h >> create mode 100644 util/strList.c > > >> +#include "qapi/qapi-builtin-types.h" >> + >> +/* >> + * Split @str into a strList using the delimiter string @delim. >> + * The delimiter is not included in the result. >> + * Return NULL if @str is NULL or an empty string. >> + * A leading, trailing, or consecutive delimiter produces an >> + * empty string at that position in the output. >> + * All strings are g_strdup'd, and the result can be freed >> + * using qapi_free_strList. > > Note "qapi/qapi-builtin-types.h" defines: > > G_DEFINE_AUTOPTR_CLEANUP_FUNC(strList, qapi_free_strList) > > Maybe mention we can also use: > > g_autoptr(strList)
Thanks Philippe. If we get to V6 for this series, I will mention this, and also mention g_autoptr(GStrv) in the header comment for strv_from_strlist. - Steve >> + */ >> +strList *str_split(const char *str, const char *delim); >> + >> +#endif >