RESOLVED FIXED 135072
[iOS] Tapping "Allow Website" on a restricted page does not bring up the keypad
https://bugs.webkit.org/show_bug.cgi?id=135072
Summary [iOS] Tapping "Allow Website" on a restricted page does not bring up the keypad
Andy Estes
Reported 2014-07-18 14:52:18 PDT
[iOS] Tapping "Allow Website" on a restricted page does not bring up the keypad
Attachments
Patch (32.91 KB, patch)
2014-07-18 15:09 PDT, Andy Estes
ddkilzer: review+
Andy Estes
Comment 1 2014-07-18 15:09:19 PDT
David Kilzer (:ddkilzer)
Comment 2 2014-07-18 16:36:42 PDT
Comment on attachment 235149 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=235149&action=review r=me > Source/WebCore/platform/mac/ContentFilterMac.mm:250 > + @try { > + if ([getWebFilterEvaluatorClass() conformsToProtocol:@protocol(NSSecureCoding)]) > + contentFilter.m_platformContentFilter = (WebFilterEvaluator *)[unarchiver decodeObjectOfClass:getWebFilterEvaluatorClass() forKey:platformContentFilterKey]; > + return true; > + } @catch (NSException *exception) { Do we really want to return true here if we fall through the if statement? Seems like we'd want something like this: if ([getWebFilterEvaluatorClass() conformsToProtocol:@protocol(NSSecureCoding)]) { contentFilter.m_platformContentFilter = (WebFilterEvaluator *)[unarchiver decodeObjectOfClass:getWebFilterEvaluatorClass() forKey:platformContentFilterKey]; return true; }
Andy Estes
Comment 3 2014-07-18 17:04:34 PDT
(In reply to comment #2) > (From update of attachment 235149 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=235149&action=review > > r=me > > > Source/WebCore/platform/mac/ContentFilterMac.mm:250 > > + @try { > > + if ([getWebFilterEvaluatorClass() conformsToProtocol:@protocol(NSSecureCoding)]) > > + contentFilter.m_platformContentFilter = (WebFilterEvaluator *)[unarchiver decodeObjectOfClass:getWebFilterEvaluatorClass() forKey:platformContentFilterKey]; > > + return true; > > + } @catch (NSException *exception) { > > Do we really want to return true here if we fall through the if statement? Seems like we'd want something like this: > > if ([getWebFilterEvaluatorClass() conformsToProtocol:@protocol(NSSecureCoding)]) { > contentFilter.m_platformContentFilter = (WebFilterEvaluator *)[unarchiver decodeObjectOfClass:getWebFilterEvaluatorClass() forKey:platformContentFilterKey]; > return true; > } I believe we do want to return true, because WebFilterEvaluator not conforming to NSSecureCoding does not represent a failure to decode the message, just that we are running against an older version of the framework implementing that class.
Andy Estes
Comment 4 2014-07-18 17:16:44 PDT
Brady also looked at this and gave me an okay on IRC.
Andy Estes
Comment 5 2014-07-18 17:19:50 PDT
Andy Estes
Comment 6 2014-07-18 17:20:21 PDT
Note You need to log in before you can comment on or make changes to this bug.