From 634a32bdfa52d8728af6a962d8141881609026f3 Mon Sep 17 00:00:00 2001 From: Christian Hergert Date: Fri, 5 May 2023 16:35:10 -0700 Subject: [PATCH] libsysprof-analyze: allow zero length embedded files --- src/libsysprof-analyze/sysprof-document.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/libsysprof-analyze/sysprof-document.c b/src/libsysprof-analyze/sysprof-document.c index 86b0a607..41e0b837 100644 --- a/src/libsysprof-analyze/sysprof-document.c +++ b/src/libsysprof-analyze/sysprof-document.c @@ -387,6 +387,7 @@ sysprof_document_lookup_file (GTask *task, g_autoptr(GByteArray) bytes = NULL; const char *filename = task_data; GtkBitsetIter iter; + gboolean was_found = FALSE; guint i; g_assert (G_IS_TASK (task)); @@ -422,6 +423,8 @@ sysprof_document_lookup_file (GTask *task, g_byte_array_append (bytes, data, size); + was_found = TRUE; + if (sysprof_document_file_chunk_get_is_last (file_chunk)) break; } @@ -430,7 +433,7 @@ sysprof_document_lookup_file (GTask *task, while (gtk_bitset_iter_next (&iter, &i)); } - if (bytes->len == 0) + if (!was_found) g_task_return_new_error (task, G_IO_ERROR, G_IO_ERROR_NOT_FOUND,