This is an automated email from the git hooks/post-receive script. b l u e s a b r e p u s h e d a c o m m i t t o b r a n c h m a s t e r in repository xfce/xfce4-settings.
commit 01ea721132a1bc2778267e5c2a6f88711b48b72f Author: Florian Schüller <florian.schuel...@gmail.com> Date: Sun Mar 4 00:04:16 2018 +0100 Avoid Segfault on reconnect scenario I can reproduce a segfault with: * Connect a monitor (Monitors "overlap" now) * Select mirror mode * Apply * Disconnect monitor * Connect monitor again --- dialogs/display-settings/main.c | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/dialogs/display-settings/main.c b/dialogs/display-settings/main.c index 67d4577..cb1bf4f 100644 --- a/dialogs/display-settings/main.c +++ b/dialogs/display-settings/main.c @@ -179,14 +179,15 @@ static XfceOutputInfo* get_nth_xfce_output_info(gint id) { XfceOutputInfo *output = NULL; + GList * entry = NULL; if (current_outputs) - output = g_list_nth (current_outputs, id)->data; + entry = g_list_nth (current_outputs, id); - if (output) - return output; + if (entry) + output = entry->data; - return NULL; + return output; } static void @@ -932,12 +933,14 @@ display_setting_mirror_displays_toggled (GtkToggleButton *togglebutton, for (n = 0; n < xfce_randr->noutput; n++) { output = get_nth_xfce_output_info (n); - output->rotation = xfce_randr->rotation[n]; - output->x = xfce_randr->position[n].x; - output->y = xfce_randr->position[n].y; - output->mirrored = xfce_randr->mirrored[n]; - output->width = xfce_randr_mode_width (xfce_randr_find_mode_by_id (xfce_randr, n, xfce_randr->mode[n]), 0); - output->height = xfce_randr_mode_height (xfce_randr_find_mode_by_id (xfce_randr, n, xfce_randr->mode[n]), 0); + if (output) { + output->rotation = xfce_randr->rotation[n]; + output->x = xfce_randr->position[n].x; + output->y = xfce_randr->position[n].y; + output->mirrored = xfce_randr->mirrored[n]; + output->width = xfce_randr_mode_width (xfce_randr_find_mode_by_id (xfce_randr, n, xfce_randr->mode[n]), 0); + output->height = xfce_randr_mode_height (xfce_randr_find_mode_by_id (xfce_randr, n, xfce_randr->mode[n]), 0); + } /* else: some kind of racecondition during re-connect? - just ignore */ } /* Apply the changes */ -- To stop receiving notification emails like this one, please contact the administrator of this repository. _______________________________________________ Xfce4-commits mailing list Xfce4-commits@xfce.org https://mail.xfce.org/mailman/listinfo/xfce4-commits