mirror of
https://gitlab.freedesktop.org/dbus/dbus.git
synced 2026-05-05 18:08:01 +02:00
auth: Clear GUID from server if out of memory
If we retry processing the message in response to OOM, but we don't clear this buffer first, then the assertion at the beginning will fail. Signed-off-by: Simon McVittie <smcv@collabora.com>
This commit is contained in:
parent
0b8878133f
commit
0cc191f8e8
1 changed files with 17 additions and 2 deletions
|
|
@ -1664,10 +1664,25 @@ process_ok(DBusAuth *auth,
|
|||
_dbus_string_get_const_data (& DBUS_AUTH_CLIENT (auth)->guid_from_server));
|
||||
|
||||
if (auth->unix_fd_possible)
|
||||
return send_negotiate_unix_fd(auth);
|
||||
{
|
||||
if (!send_negotiate_unix_fd (auth))
|
||||
{
|
||||
_dbus_string_set_length (& DBUS_AUTH_CLIENT (auth)->guid_from_server, 0);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
_dbus_verbose("Not negotiating unix fd passing, since not possible\n");
|
||||
return send_begin (auth);
|
||||
|
||||
if (!send_begin (auth))
|
||||
{
|
||||
_dbus_string_set_length (& DBUS_AUTH_CLIENT (auth)->guid_from_server, 0);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static dbus_bool_t
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue