-
Notifications
You must be signed in to change notification settings - Fork 2.4k
Closed
Description
In function DBus_OpenDialog()
, if dbus->connection_send_with_reply_and_block()
return NULL, then signal_id
is not initialised and is passed to SDL_strlen()
and SDL_snprintf()
.
SDL/src/dialog/unix/SDL_portaldialog.c
Lines 345 to 361 in fc26d5d
DBusMessage *reply = dbus->connection_send_with_reply_and_block(dbus->session_conn, msg, DBUS_TIMEOUT_INFINITE, NULL); | |
if (reply) { | |
DBusMessageIter reply_iter; | |
dbus->message_iter_init(reply, &reply_iter); | |
if (dbus->message_iter_get_arg_type(&reply_iter) != DBUS_TYPE_OBJECT_PATH) | |
{ | |
SDL_SetError("%s", "Invalid response received by DBus!"); | |
goto incorrect_type; | |
} | |
dbus->message_iter_get_basic(&reply_iter, &signal_id); | |
} | |
dbus->message_unref(msg); | |
filter_len = SDL_strlen(SIGNAL_FILTER) + SDL_strlen(signal_id) + 2; | |
filter = SDL_malloc(sizeof(char) * filter_len); |
Metadata
Metadata
Assignees
Labels
No labels