X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=gtk%2Fsrc%2Fplist.c;h=05d6fdd8ea62d09dbd8c7d27d5fa942aab79a650;hb=f78e4458ad5918c9c65bf658982b9997d966f113;hp=83e9326abf9025e590db25e33ef1415fd29e8ffc;hpb=d96cade527eefbe66e77e46088f26f97c14d7eeb;p=handbrake-jp%2Fhandbrake-jp-git.git
diff --git a/gtk/src/plist.c b/gtk/src/plist.c
index 83e9326a..05d6fdd8 100644
--- a/gtk/src/plist.c
+++ b/gtk/src/plist.c
@@ -377,6 +377,8 @@ ghb_plist_parse(const gchar *buf, gssize len)
g_markup_parse_context_parse(ctx, buf, len, &err);
g_markup_parse_context_end_parse(ctx, &err);
g_markup_parse_context_free(ctx);
+ if (pd.key) g_free(pd.key);
+ if (pd.value) g_free(pd.value);
g_queue_free(pd.stack);
g_queue_free(pd.tag_stack);
return pd.plist;
@@ -392,7 +394,10 @@ ghb_plist_parse_file(const gchar *filename)
fd = g_fopen(filename, "r");
if (fd == NULL)
+ {
+ g_warning("Plist parse: failed to open %s", filename);
return NULL;
+ }
fseek(fd, 0, SEEK_END);
size = ftell(fd);
fseek(fd, 0, SEEK_SET);
@@ -520,6 +525,11 @@ gval_write(FILE *file, GValue *gval)
gint val = g_value_get_int64(gval);
indent_fprintf(file, indent, "%d\n", val);
}
+ else if (gtype == G_TYPE_INT)
+ {
+ gint val = g_value_get_int(gval);
+ indent_fprintf(file, indent, "%d\n", val);
+ }
else if (gtype == G_TYPE_STRING)
{
const gchar *str = g_value_get_string(gval);