[GTK] Off-by-one error in getStyleContext()
authormcatanzaro@igalia.com <mcatanzaro@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 21 Nov 2015 17:00:00 +0000 (17:00 +0000)
committermcatanzaro@igalia.com <mcatanzaro@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 21 Nov 2015 17:00:00 +0000 (17:00 +0000)
commit9e1f7dba2d6017c9e112426b489d1c3ab09e179a
treee6d36ec68c7389ce8ddea6f2e66f8222270af1d6
parent8a9293189b2d25898cd752be5adbba0e16e4f062
[GTK] Off-by-one error in getStyleContext()
https://bugs.webkit.org/show_bug.cgi?id=151524

Reviewed by Carlos Garcia Campos.

GtkWidgetPath* path = gtk_widget_path_new();
gtk_widget_path_append_type(path, widgetType);
// ...
gtk_widget_path_iter_add_class(path, 0, GTK_STYLE_CLASS_BUTTON);
gtk_widget_path_iter_add_class(path, 1, "text-button");

Only one widget type was appended to the widget path, so the maximum valid index is 0. This
code means to add both style classes to the first widget type in the widget path, so the
second call should use index 0 rather than index 1.

This caused no bug in practice, because when the index is invalid,
gtk_widget_path_iter_add_class() automatically changes the index to the last valid position
in the widget path -- in this case, 0. This is routinely done with -1 as a convention for
specifying the last position in the widget path.

* rendering/RenderThemeGtk.cpp:
(WebCore::getStyleContext):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@192724 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore/ChangeLog
Source/WebCore/rendering/RenderThemeGtk.cpp