diff --git a/glib/gprintf.c b/glib/gprintf.c index 818a55ad2..10b436533 100644 --- a/glib/gprintf.c +++ b/glib/gprintf.c @@ -342,7 +342,14 @@ g_vasprintf (gchar **string, if (len < 0) { if (saved_errno == ENOMEM) - g_error ("%s: failed to allocate memory", G_STRLOC); + { + /* Try and print a message to be a bit helpful, but stick to the + * bare minimum to avoid any code path which could try and fail to + * allocate additional memory. */ + fputs (G_STRLOC, stderr); + fputs (": failed to allocate memory\n", stderr); + g_abort (); + } else *string = NULL; }