From: Chun-wei Fan Date: Tue, 17 Dec 2013 02:58:15 +0000 (+0800) Subject: Fix the Keyfile Test on Windows X-Git-Tag: 2.39.3~27 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3fd6edab66244b100c32dc0a8b0720fe61431dcc;p=platform%2Fupstream%2Fglib.git Fix the Keyfile Test on Windows Windows will not allow one to write to a temp file opened by g_mkstemp() by opening another fd associated with it before one closes the fd that is returned by g_mkstemp(), which will cause the test_save test to fail. Fix this by using a variable to store the fd from g_mkstemp() and checking it, and call close() on that variable before attempting to call g_key_file_save_to_file() on the temp file as that will attempt to open another fd (which would not work) associated with that temp file. https://bugzilla.gnome.org/show_bug.cgi?id=719344 --- diff --git a/glib/tests/keyfile.c b/glib/tests/keyfile.c index e00460b..d3f70c5 100644 --- a/glib/tests/keyfile.c +++ b/glib/tests/keyfile.c @@ -1370,13 +1370,16 @@ test_save (void) gchar *file; guint64 c; GError *error = NULL; + int fd; kf = g_key_file_new (); ok = g_key_file_load_from_data (kf, data, strlen (data), 0, NULL); g_assert (ok); file = g_strdup ("key_file_XXXXXX"); - g_mkstemp (file); + fd = g_mkstemp (file); + g_assert (fd != -1); + close (fd); ok = g_key_file_save_to_file (kf, file, &error); g_assert (ok); g_assert_no_error (error);