From: Matthias Clasen Date: Sun, 19 Mar 2023 14:04:46 +0000 (-0400) Subject: node-editor: Embed textures in testcases X-Git-Tag: archive/raspbian/4.12.3+ds-1+rpi1~1^2^2^2~22^2~1^2~526^2~5 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=0a3eceb15d45767988e7e4781afc34a23bd4cd8f;p=gtk4.git node-editor: Embed textures in testcases It is useless to have node files with references to external files in the testsuite, so turn such textures into data urls by doing a serialization roundtrip. --- diff --git a/demos/node-editor/node-editor-window.c b/demos/node-editor/node-editor-window.c index 3fe3d818c7..5c38140162 100644 --- a/demos/node-editor/node-editor-window.c +++ b/demos/node-editor/node-editor-window.c @@ -1017,6 +1017,19 @@ testcase_save_clicked_cb (GtkWidget *button, } text = get_current_text (self->text_buffer); + { + GBytes *bytes; + GskRenderNode *node; + gsize size; + + bytes = g_bytes_new_take (text, strlen (text) + 1); + node = gsk_render_node_deserialize (bytes, NULL, NULL); + g_bytes_unref (bytes); + bytes = gsk_render_node_serialize (node); + gsk_render_node_unref (node); + text = g_bytes_unref_to_data (bytes, &size); + } + if (!g_file_set_contents (node_file, text, -1, &error)) { gtk_label_set_label (GTK_LABEL (self->testcase_error_label), error->message);