diff --git a/gnome-settings-daemon/ChangeLog b/gnome-settings-daemon/ChangeLog index ab28e8289..1181d0763 100644 --- a/gnome-settings-daemon/ChangeLog +++ b/gnome-settings-daemon/ChangeLog @@ -1,3 +1,8 @@ +2006-04-17 Ray Strode + + * gnome-settings-mouse.c (configure_button_layout): fix + potential (tiny, hard to trigger) overrun (bug 338254) + 2006-04-10 Marien Zwart Fixes #323724 diff --git a/gnome-settings-daemon/gnome-settings-mouse.c b/gnome-settings-daemon/gnome-settings-mouse.c index 5975bca67..6fa445144 100644 --- a/gnome-settings-daemon/gnome-settings-mouse.c +++ b/gnome-settings-daemon/gnome-settings-mouse.c @@ -70,7 +70,9 @@ configure_button_layout (guchar *buttons, } /* swap the buttons */ buttons[left_button - 1] = right_button; - buttons[i] = left_button; + + if (i != n_buttons) + buttons[i] = left_button; } /* check if we are not left_handed but are swapped */ else if (!left_handed && buttons[left_button - 1] == right_button) @@ -82,7 +84,9 @@ configure_button_layout (guchar *buttons, break; } /* swap the buttons */ - buttons[i] = right_button; + if (i != n_buttons) + buttons[i] = right_button; + buttons[left_button - 1] = left_button; } }