diff options
author | John (J5) Palmieri <johnp@redhat.com> | 2008-01-15 13:53:54 -0500 |
---|---|---|
committer | John (J5) Palmieri <johnp@redhat.com> | 2008-01-15 13:53:54 -0500 |
commit | c18415e2c6e151b773a90e66188714124ee8b867 (patch) | |
tree | 8ca7fc9d4726809d56d0b6a653c604f0097aa10b /dbus/dbus-internals.c | |
parent | a6a22beeae1e710d211d773d78e21c95f4ebe536 (diff) | |
download | dbus-c18415e2c6e151b773a90e66188714124ee8b867.tar.gz |
add OOM handling
2008-01-15 John (J5) Palmieri <johnp@redhat.com>
* patch by Kimmo Hämäläinen <kimmo dot hamalainen at nokia dot com>
* dbus/dbus-internals.c (_dbus_read_uuid_file_without_creating,
_dbus_create_uuid_file_exclusively): add OOM handling (FDO Bug #12952)
Diffstat (limited to 'dbus/dbus-internals.c')
-rw-r--r-- | dbus/dbus-internals.c | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/dbus/dbus-internals.c b/dbus/dbus-internals.c index c99bee1a..f3ca7c55 100644 --- a/dbus/dbus-internals.c +++ b/dbus/dbus-internals.c @@ -543,8 +543,18 @@ _dbus_read_uuid_file_without_creating (const DBusString *filename, DBusString decoded; int end; - _dbus_string_init (&contents); - _dbus_string_init (&decoded); + if (!_dbus_string_init (&contents)) + { + _DBUS_SET_OOM (error); + return FALSE; + } + + if (!_dbus_string_init (&decoded)) + { + _dbus_string_free (&contents); + _DBUS_SET_OOM (error); + return FALSE; + } if (!_dbus_file_get_contents (&contents, filename, error)) goto error; @@ -608,7 +618,11 @@ _dbus_create_uuid_file_exclusively (const DBusString *filename, { DBusString encoded; - _dbus_string_init (&encoded); + if (!_dbus_string_init (&encoded)) + { + _DBUS_SET_OOM (error); + return FALSE; + } _dbus_generate_uuid (uuid); |