Be a bit more robust, fix data entries
This commit is contained in:
parent
2d77af94c6
commit
d55275d603
|
@ -822,10 +822,13 @@ read_entry (gchar type, const gchar **entry_iterator,
|
||||||
GString *data = g_string_new (NULL);
|
GString *data = g_string_new (NULL);
|
||||||
|
|
||||||
if (is_final)
|
if (is_final)
|
||||||
|
{
|
||||||
g_string_append_len (data, entry, end - entry);
|
g_string_append_len (data, entry, end - entry);
|
||||||
|
entry += end - entry;
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
gchar c;
|
gint c = EOF;
|
||||||
while (entry < end && (c = *entry++))
|
while (entry < end && (c = *entry++))
|
||||||
g_string_append_c (data, c);
|
g_string_append_c (data, c);
|
||||||
|
|
||||||
|
@ -860,7 +863,7 @@ read_entry (gchar type, const gchar **entry_iterator,
|
||||||
sef->type = type;
|
sef->type = type;
|
||||||
sef->data_size = length;
|
sef->data_size = length;
|
||||||
sef->data = memcpy (g_malloc (length), entry, length);
|
sef->data = memcpy (g_malloc (length), entry, length);
|
||||||
*entry_iterator = entry;
|
*entry_iterator = entry + length;
|
||||||
return sef;
|
return sef;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue