mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager
synced 2024-10-06 16:21:50 +00:00
nm-dispatcher: fix crash when parsing output dictionary
'stdout' is NULL when the script didn't write anything or failed.
Fixes the following crash detected by NMCI in test
'dispatcher_device_handler_dummy'.
nm-dispatcher[936339]: g_strsplit: assertion 'string != NULL' failed
build_result_options (nm-dispatcher)
complete_request (nm-dispatcher)
complete_script (nm-dispatcher)
script_watch_cb (nm-dispatcher)
g_child_watch_dispatch (libglib-2.0.so.0)
g_main_dispatch (libglib-2.0.so.0)
g_main_context_iterate (libglib-2.0.so.0)
g_main_context_iteration (libglib-2.0.so.0)
main (nm-dispatcher)
__libc_start_main (libc.so.6)
_start (nm-dispatcher)
Fixes: d72f26b875
('dispatcher: read device-handler's stdout into a dictionary')
https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1889
This commit is contained in:
parent
b699de9d4a
commit
e5c2c5f1c2
|
@ -306,6 +306,9 @@ build_result_options(char *stdout)
|
||||||
char *key;
|
char *key;
|
||||||
char *value;
|
char *value;
|
||||||
|
|
||||||
|
if (!stdout)
|
||||||
|
return NULL;
|
||||||
|
|
||||||
lines = g_strsplit(stdout, "\n", 65);
|
lines = g_strsplit(stdout, "\n", 65);
|
||||||
|
|
||||||
for (i = 0; lines[i] && i < 64; i++) {
|
for (i = 0; lines[i] && i < 64; i++) {
|
||||||
|
|
Loading…
Reference in a new issue