public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
From: Kalev Lember <kalevlember@gmail.com>
To: git-commits@fedoraproject.org
Subject: [rpms/glib2] cve-2026-58016-f44: Update to 2.37.0
Date: Tue, 11 Aug 2026 10:35:28 GMT	[thread overview]
Message-ID: <178644452808.1.6890075651880333077.rpms-glib2-2d0f25ec3ed7@fedoraproject.org> (raw)

A new commit has been pushed.

Repo   : rpms/glib2
Branch : cve-2026-58016-f44
Commit : 2d0f25ec3ed784463375d6432c0c3e16d5b17a00
Author : Kalev Lember <kalevlember@gmail.com>
Date   : 2013-05-03T22:11:01+02:00
Stats  : +7/-141 in 3 file(s)
URL    : https://src.fedoraproject.org/rpms/glib2/c/2d0f25ec3ed784463375d6432c0c3e16d5b17a00?branch=cve-2026-58016-f44

Log:
Update to 2.37.0

---
diff --git a/glib2-partially_revert_merge_waitpid_from_g_spawn_sync_into_gmain.patch b/glib2-partially_revert_merge_waitpid_from_g_spawn_sync_into_gmain.patch
deleted file mode 100644
index 848ffea..0000000
--- a/glib2-partially_revert_merge_waitpid_from_g_spawn_sync_into_gmain.patch
+++ /dev/null
@@ -1,133 +0,0 @@
-From f3b1054b0ebb4912f700e08da0c3d35c30113e79 Mon Sep 17 00:00:00 2001
-From: Ryan Lortie <desrt@desrt.ca>
-Date: Tue, 23 Apr 2013 17:26:48 +0000
-Subject: Partially revert "Merge waitpid() from g_spawn_sync into gmain()"
-
-This partially reverts commit ce0022933c255313e010b27f977f4ae02aad1e7e.
-
-It used to be safe to use g_spawn_sync() from processes that had their
-own SIGCHLD handler because it simply called wait().  When it was
-changed to depend on the GLib child watching infrastructure this meant
-that GLib had to own the SIGCHLD handler.
-
-This caused hangs in at least Pidgin.
-
-The patch contained two other improvements to the child watch code which
-we want to keep, so only revert the changes to gspawn itself.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=698081
----
-diff --git a/glib/gspawn.c b/glib/gspawn.c
-index 381ed5c..01cedf6 100644
---- a/glib/gspawn.c
-+++ b/glib/gspawn.c
-@@ -47,7 +47,6 @@
- 
- #include "genviron.h"
- #include "gmem.h"
--#include "gmain.h"
- #include "gshell.h"
- #include "gstring.h"
- #include "gstrfuncs.h"
-@@ -207,21 +206,6 @@ read_data (GString *str,
-     }
- }
- 
--typedef struct {
--  GMainLoop *loop;
--  gint *status_p;
--} SyncWaitpidData;
--
--static void
--on_sync_waitpid (GPid     pid,
--                 gint     status,
--                 gpointer user_data)
--{
--  SyncWaitpidData *data = user_data;
--  *(data->status_p) = status;
--  g_main_loop_quit (data->loop);
--}
--
- /**
-  * g_spawn_sync:
-  * @working_directory: (allow-none): child's current working directory, or %NULL to inherit parent's
-@@ -277,7 +261,6 @@ g_spawn_sync (const gchar          *working_directory,
-   GString *errstr = NULL;
-   gboolean failed;
-   gint status;
--  SyncWaitpidData waitpid_data;
-   
-   g_return_val_if_fail (argv != NULL, FALSE);
-   g_return_val_if_fail (!(flags & G_SPAWN_DO_NOT_REAP_CHILD), FALSE);
-@@ -410,32 +393,45 @@ g_spawn_sync (const gchar          *working_directory,
-     close_and_invalidate (&outpipe);
-   if (errpipe >= 0)
-     close_and_invalidate (&errpipe);
--
--  /* Now create a temporary main context and loop, with just one
--   * waitpid source.  We used to invoke waitpid() directly here, but
--   * this way we unify with the worker thread in gmain.c.
-+  
-+  /* Wait for child to exit, even if we have
-+   * an error pending.
-    */
--  {
--    GMainContext *context;
--    GMainLoop *loop;
--    GSource *source;
--
--    context = g_main_context_new ();
--    loop = g_main_loop_new (context, TRUE);
-+ again:
-+      
-+  ret = waitpid (pid, &status, 0);
- 
--    waitpid_data.loop = loop;
--    waitpid_data.status_p = &status;
--    
--    source = g_child_watch_source_new (pid);
--    g_source_set_callback (source, (GSourceFunc)on_sync_waitpid, &waitpid_data, NULL);
--    g_source_attach (source, context);
--    g_source_unref (source);
--    
--    g_main_loop_run (loop);
-+  if (ret < 0)
-+    {
-+      if (errno == EINTR)
-+        goto again;
-+      else if (errno == ECHILD)
-+        {
-+          if (exit_status)
-+            {
-+              g_warning ("In call to g_spawn_sync(), exit status of a child process was requested but ECHILD was received by waitpid(). Most likely the process is ignoring SIGCHLD, or some other thread is invoking waitpid() with a nonpositive first argument; either behavior can break applications that use g_spawn_sync either directly or indirectly.");
-+            }
-+          else
-+            {
-+              /* We don't need the exit status. */
-+            }
-+        }
-+      else
-+        {
-+          if (!failed) /* avoid error pileups */
-+            {
-+              int errsv = errno;
- 
--    g_main_context_unref (context);
--    g_main_loop_unref (loop);
--  }
-+              failed = TRUE;
-+                  
-+              g_set_error (error,
-+                           G_SPAWN_ERROR,
-+                           G_SPAWN_ERROR_READ,
-+                           _("Unexpected error in waitpid() (%s)"),
-+                           g_strerror (errsv));
-+            }
-+        }
-+    }
-   
-   if (failed)
-     {
---
-cgit v0.9.1
-

diff --git a/glib2.spec b/glib2.spec
index 51a3f51..de68cd8 100644
--- a/glib2.spec
+++ b/glib2.spec
@@ -1,15 +1,12 @@
 Summary: A library of handy utility functions
 Name: glib2
-Version: 2.36.1
-Release: 2%{?dist}
+Version: 2.37.0
+Release: 1%{?dist}
 License: LGPLv2+
 Group: System Environment/Libraries
 URL: http://www.gtk.org
 #VCS: git:git://git.gnome.org/glib
-Source: http://download.gnome.org/sources/glib/2.36/glib-%{version}.tar.xz
-# patch0 was is commit eb860fd on master and f3b1054b in 2.36 
-# backgrounds: https://bugzilla.gnome.org/show_bug.cgi?id=698081
-Patch0: %{name}-partially_revert_merge_waitpid_from_g_spawn_sync_into_gmain.patch
+Source: http://download.gnome.org/sources/glib/2.37/glib-%{version}.tar.xz
 
 BuildRequires: pkgconfig
 BuildRequires: gettext
@@ -67,7 +64,6 @@ The glib2-fam package contains the FAM (File Alteration Monitor) module for GIO.
 
 %prep
 %setup -q -n glib-%{version}
-%patch0 -p1 -b .patch0
 
 %build
 # Support builds of both git snapshots and tarballs packed with autogoo
@@ -188,6 +184,9 @@ gio-querymodules-%{__isa_bits} %{_libdir}/gio/modules
 %{_libdir}/gio/modules/libgiofam.so
 
 %changelog
+* Sat May 04 2013 Kalev Lember <kalevlember@gmail.com> - 2.37.0-1
+- Update to 2.37.0
+
 * Sat Apr 27 2013 Thorsten Leemhuis <fedora@leemhuis.info> - 2.36.1-2
 - Fix pidgin freezes by applying patch from master (#956872)
 

diff --git a/sources b/sources
index ea6aa07..6fb2e55 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-a3bbee44a13facb5a3cab18be5ece14c  glib-2.36.1.tar.xz
+a2dabe3887b05abd0fd4ae1c276f080c  glib-2.37.0.tar.xz

                 reply	other threads:[~2026-08-11 10:35 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=178644452808.1.6890075651880333077.rpms-glib2-2d0f25ec3ed7@fedoraproject.org \
    --to=kalevlember@gmail.com \
    --cc=git-commits@fedoraproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox