mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-25 18:55:30 -06:00
Correct memory leaks found with Valgrind.
git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@20645 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
parent
0e2a9d1f55
commit
fdf8346f0b
@ -142,7 +142,7 @@ error_handler(const char *str)
|
|||||||
gboolean
|
gboolean
|
||||||
gnc_run_report (gint report_id, char ** data)
|
gnc_run_report (gint report_id, char ** data)
|
||||||
{
|
{
|
||||||
const gchar *free_data;
|
gchar *free_data;
|
||||||
SCM scm_text;
|
SCM scm_text;
|
||||||
gchar *str;
|
gchar *str;
|
||||||
|
|
||||||
@ -156,8 +156,11 @@ gnc_run_report (gint report_id, char ** data)
|
|||||||
if (scm_text == SCM_UNDEFINED || !scm_is_string (scm_text))
|
if (scm_text == SCM_UNDEFINED || !scm_is_string (scm_text))
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
|
||||||
|
scm_dynwind_begin (0);
|
||||||
free_data = scm_to_locale_string (scm_text);
|
free_data = scm_to_locale_string (scm_text);
|
||||||
*data = g_strdup (free_data);
|
*data = g_strdup (free_data);
|
||||||
|
scm_dynwind_free (free_data);
|
||||||
|
scm_dynwind_end ();
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
@ -185,6 +188,8 @@ gnc_report_name( SCM report )
|
|||||||
{
|
{
|
||||||
SCM get_name = scm_c_eval_string("gnc:report-name");
|
SCM get_name = scm_c_eval_string("gnc:report-name");
|
||||||
SCM value;
|
SCM value;
|
||||||
|
gchar *str = NULL;
|
||||||
|
gchar *report_name = NULL;
|
||||||
|
|
||||||
if (report == SCM_BOOL_F)
|
if (report == SCM_BOOL_F)
|
||||||
return NULL;
|
return NULL;
|
||||||
@ -193,7 +198,13 @@ gnc_report_name( SCM report )
|
|||||||
if (!scm_is_string(value))
|
if (!scm_is_string(value))
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
return g_strdup(scm_to_locale_string(value));
|
scm_dynwind_begin (0);
|
||||||
|
str = scm_to_locale_string (value);
|
||||||
|
report_name = g_strdup (str);
|
||||||
|
scm_dynwind_free (str);
|
||||||
|
scm_dynwind_end ();
|
||||||
|
|
||||||
|
return report_name;
|
||||||
}
|
}
|
||||||
|
|
||||||
gchar*
|
gchar*
|
||||||
|
Loading…
Reference in New Issue
Block a user