mirror of
https://gitlab.freedesktop.org/dbus/dbus.git
synced 2026-05-09 10:48:26 +02:00
Ensure DBusError is set if _dbus_read_nonce() fail
In _dbus_send_nonce() which call in _dbus_read_nonce() and assert on an error is set if _dbus_read_nonce() fail. However, in _dbus_read_nonce(), it may fail on fopen() and left error is unset. This will crash us if assertions hasn't been disabled. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=72298 Reviewed-by: Simon McVittie <simon.mcvittie@collabora.co.uk>
This commit is contained in:
parent
f4618906b0
commit
15a5b2637c
1 changed files with 9 additions and 1 deletions
|
|
@ -113,7 +113,15 @@ _dbus_read_nonce (const DBusString *fname, DBusString *nonce, DBusError* error)
|
|||
|
||||
fp = fopen (_dbus_string_get_const_data (fname), "rb");
|
||||
if (!fp)
|
||||
return FALSE;
|
||||
{
|
||||
dbus_set_error (error,
|
||||
_dbus_error_from_system_errno (),
|
||||
"Failed to open %s for read: %s",
|
||||
_dbus_string_get_const_data (fname),
|
||||
_dbus_strerror_from_errno ());
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
nread = fread (buffer, 1, sizeof buffer - 1, fp);
|
||||
fclose (fp);
|
||||
if (!nread)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue