Changeset 188918 in webkit
- Timestamp:
- Aug 25, 2015 11:00:02 AM (9 years ago)
- Location:
- trunk
- Files:
-
- 2 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/TestExpectations
r188917 r188918 19 19 20 20 fast/forms/search/search-padding-cancel-results-buttons.html [ Skip ] 21 fast/forms/search/search-results-hidden-crash.html [ Skip ] 21 22 22 23 #////////////////////////////////////////////////////////////////////////////////////////// -
trunk/LayoutTests/platform/mac/TestExpectations
r188901 r188918 12 12 13 13 fast/forms/search/search-padding-cancel-results-buttons.html [ Pass ] 14 fast/forms/search/search-results-hidden-crash.html [ Pass ] 14 15 15 16 #////////////////////////////////////////////////////////////////////////////////////////// -
trunk/Source/WebCore/ChangeLog
r188917 r188918 1 2015-08-25 Wenson Hsieh <wenson_hsieh@apple.com> 2 3 Fix crash due to search field disappearing when showing results menu 4 https://bugs.webkit.org/show_bug.cgi?id=148410 5 <rdar://problem/22399850> 6 7 Reviewed by Brent Fulgham. 8 9 When clicking on the results button of a search field that hides upon being focused, WebKit will crash because we 10 attempt to toggle the results menu using the search field's renderer which is null. This is addressed by adding a null 11 check to make sure the search field has not been hidden before toggling the menu. 12 13 Test: fast/forms/search/search-results-hidden-crash.html 14 15 * html/shadow/TextControlInnerElements.cpp: 16 (WebCore::SearchFieldResultsButtonElement::defaultEventHandler): Add a null check for the search field's renderer. 17 1 18 2015-08-25 Chris Dumez <cdumez@apple.com> 2 19 -
trunk/Source/WebCore/html/shadow/TextControlInnerElements.cpp
r185459 r188918 148 148 input->select(); 149 149 #if !PLATFORM(IOS) 150 RenderSearchField& renderer = downcast<RenderSearchField>(*input->renderer()); 151 if (renderer.popupIsVisible()) 152 renderer.hidePopup(); 153 else if (input->maxResults() > 0) 154 renderer.showPopup(); 150 if (RenderObject* renderer = input->renderer()) { 151 RenderSearchField& searchFieldRenderer = downcast<RenderSearchField>(*renderer); 152 if (searchFieldRenderer.popupIsVisible()) 153 searchFieldRenderer.hidePopup(); 154 else if (input->maxResults() > 0) 155 searchFieldRenderer.showPopup(); 156 } 155 157 #endif 156 158 event->setDefaultHandled();
Note: See TracChangeset
for help on using the changeset viewer.