mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-04-26 05:06:17 +00:00
pbutils: encoding-target: fix error checking in target file loading
https://bugzilla.gnome.org/show_bug.cgi?id=642949
This commit is contained in:
parent
01168b83cf
commit
17fddc13d2
1 changed files with 11 additions and 5 deletions
|
@ -707,6 +707,9 @@ load_file_and_read_header (const gchar * path, gchar ** targetname,
|
||||||
{
|
{
|
||||||
GKeyFile *in;
|
GKeyFile *in;
|
||||||
gboolean res;
|
gboolean res;
|
||||||
|
GError *key_error = NULL;
|
||||||
|
|
||||||
|
g_return_val_if_fail (error == NULL || *error == NULL, NULL);
|
||||||
|
|
||||||
in = g_key_file_new ();
|
in = g_key_file_new ();
|
||||||
|
|
||||||
|
@ -714,12 +717,13 @@ load_file_and_read_header (const gchar * path, gchar ** targetname,
|
||||||
|
|
||||||
res =
|
res =
|
||||||
g_key_file_load_from_file (in, path,
|
g_key_file_load_from_file (in, path,
|
||||||
G_KEY_FILE_KEEP_COMMENTS | G_KEY_FILE_KEEP_TRANSLATIONS, error);
|
G_KEY_FILE_KEEP_COMMENTS | G_KEY_FILE_KEEP_TRANSLATIONS, &key_error);
|
||||||
if (!res || error != NULL)
|
if (!res || key_error != NULL)
|
||||||
goto load_error;
|
goto load_error;
|
||||||
|
|
||||||
|
key_error = NULL;
|
||||||
*targetname =
|
*targetname =
|
||||||
g_key_file_get_value (in, GST_ENCODING_TARGET_HEADER, "name", error);
|
g_key_file_get_value (in, GST_ENCODING_TARGET_HEADER, "name", &key_error);
|
||||||
if (!*targetname)
|
if (!*targetname)
|
||||||
goto empty_name;
|
goto empty_name;
|
||||||
|
|
||||||
|
@ -734,14 +738,16 @@ load_file_and_read_header (const gchar * path, gchar ** targetname,
|
||||||
load_error:
|
load_error:
|
||||||
{
|
{
|
||||||
GST_WARNING ("Unable to read GstEncodingTarget file %s: %s",
|
GST_WARNING ("Unable to read GstEncodingTarget file %s: %s",
|
||||||
path, (*error)->message);
|
path, key_error->message);
|
||||||
|
g_propagate_error (error, key_error);
|
||||||
g_key_file_free (in);
|
g_key_file_free (in);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
empty_name:
|
empty_name:
|
||||||
{
|
{
|
||||||
GST_WARNING ("Wrong header in file %s: %s", path, (*error)->message);
|
GST_WARNING ("Wrong header in file %s: %s", path, key_error->message);
|
||||||
|
g_propagate_error (error, key_error);
|
||||||
g_key_file_free (in);
|
g_key_file_free (in);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue