From 61208eb6176b8ca221c33c33d2fc8d621c3bbfa2 Mon Sep 17 00:00:00 2001 From: "J. Alex Aycinena" Date: Mon, 13 Jun 2011 03:49:50 +0000 Subject: [PATCH] Correct memory handling of scm_to_locale_string per guile manual git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20757 57a11ea4-9604-0410-9ed3-97b8803252fd --- src/app-utils/gfec.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/app-utils/gfec.c b/src/app-utils/gfec.c index e209b4cd82..e7eb704b66 100644 --- a/src/app-utils/gfec.c +++ b/src/app-utils/gfec.c @@ -36,7 +36,15 @@ gfec_catcher(void *data, SCM tag, SCM throw_args) { result = scm_call_2(func, tag, throw_args); if (scm_is_string(result)) - msg = scm_to_locale_string(result); + { + char * str; + + scm_dynwind_begin (0); + str = scm_to_locale_string (result); + msg = g_strdup (str); + scm_dynwind_free (str); + scm_dynwind_end (); + } } if (msg == NULL)