From: Colin Walters Date: Tue, 16 Mar 2010 17:11:20 +0000 (-0400) Subject: [main] Handle OOM in reload watch X-Git-Tag: dbus-1.2.22~10 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=322c116a53bbf9137585ec99be136a759dcaf297;p=thirdparty%2Fdbus.git [main] Handle OOM in reload watch http://bugs.freedesktop.org/show_bug.cgi?id=12953 Wait for memory if we can't init the string. Based on an original patch by Kimmo Hämäläinen --- diff --git a/bus/main.c b/bus/main.c index 7f9e98f3a..e3650f1b1 100644 --- a/bus/main.c +++ b/bus/main.c @@ -156,7 +156,10 @@ handle_reload_watch (DBusWatch *watch, { DBusError error; DBusString str; - _dbus_string_init (&str); + + while (!_dbus_string_init (&str)) + _dbus_wait_for_memory (); + if ((reload_pipe[RELOAD_READ_END] > 0) && _dbus_read_socket (reload_pipe[RELOAD_READ_END], &str, 1) != 1) {