From 874207e1cc8dabbb02fe2c3743cc1cd4cf417ed7 Mon Sep 17 00:00:00 2001 From: Christopher Lam Date: Sun, 18 Oct 2026 18:56:42 +0800 Subject: [PATCH] [sixtp-dom-generators.cpp] don't heap allocate 0.5KiB for date 32 bytes on stack is more than adequate for YYYY-MM-DD and it's ASCII, no need to utf8 sanitize --- libgnucash/backend/xml/sixtp-dom-generators.cpp | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/libgnucash/backend/xml/sixtp-dom-generators.cpp b/libgnucash/backend/xml/sixtp-dom-generators.cpp index 98cba3bfeb..ee96186af1 100644 --- a/libgnucash/backend/xml/sixtp-dom-generators.cpp +++ b/libgnucash/backend/xml/sixtp-dom-generators.cpp @@ -149,18 +149,16 @@ xmlNodePtr gdate_to_dom_tree (const char* tag, const GDate* date) { xmlNodePtr ret; - gchar* date_str = NULL; + gchar date_str[32]; g_return_val_if_fail (date, NULL); - date_str = g_new (gchar, 512); - g_date_strftime (date_str, 512, "%Y-%m-%d", date); + if (!g_date_strftime (date_str, sizeof (date_str), "%Y-%m-%d", date)) + date_str[0] = '\0'; ret = xmlNewNode (NULL, BAD_CAST tag); - xmlNewTextChild (ret, NULL, BAD_CAST "gdate", checked_char_cast (date_str)); - - g_free (date_str); + xmlNewTextChild (ret, NULL, BAD_CAST "gdate", BAD_CAST date_str); return ret; }