Backward History Menu Crashes in Clean Skeleton |
||
Issue descriptionSteps to reproduce: Open Clean Skeleton App Open New Tab Navigate to a web page. Long press on back button. Observed behavior: Crash. Expected behavior: Backward history menu opens. Additional comments: The cause is that the HistoryPopupCoordinator does not implement a viewController property, as required by the BrowserCoordinator API. This property is accessed in BrowserCoordinator's updateActivationStateAfterTransition method. Note also that the CHECK that was intended to catch this case still passed: https://cs.chromium.org/chromium/src/ios/chrome/browser/ui/coordinators/browser_coordinator.mm?q=browsercoordinator&dr=C&l=156 Here is the stack trace: 2017-09-19 18:38:04.134 CSChromium[75095:81600699] -[HistoryPopupCoordinator viewController]: unrecognized selector sent to instance 0x6000000fed00 2017-09-19 18:38:04.152 CSChromium[75095:81600699] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[HistoryPopupCoordinator viewController]: unrecognized selector sent to instance 0x6000000fed00' *** First throw call stack: ( 0 CoreFoundation 0x000000011bfd234b __exceptionPreprocess + 171 1 libobjc.A.dylib 0x00000001203ff21e objc_exception_throw + 48 2 CoreFoundation 0x000000011c041f34 -[NSObject(NSObject) doesNotRecognizeSelector:] + 132 3 CoreFoundation 0x000000011bf57c15 ___forwarding___ + 1013 4 CoreFoundation 0x000000011bf57798 _CF_forwarding_prep_0 + 120 5 CSChromium 0x000000010ed3ee6c -[BrowserCoordinator updateActivationStateAfterTransition] + 348 6 CSChromium 0x000000010ed3e97d -[BrowserCoordinator start] + 189 7 CSChromium 0x000000011048dca1 -[HistoryPopupCoordinator start] + 1409 8 CSChromium 0x000000011047881c -[ToolbarCoordinator showTabHistoryPopupForBackwardHistory] + 1804 9 CSChromium 0x000000011048023b -[ToolbarViewController handleLongPress:] + 299 10 UIKit 0x000000011abd5289 -[UIGestureRecognizerTarget _sendActionWithGestureRecognizer:] + 57 11 UIKit 0x000000011abdd028 _UIGestureRecognizerSendTargetActions + 109 12 UIKit 0x000000011abdaaf7 _UIGestureRecognizerSendActions + 227 13 UIKit 0x000000011abd9d83 -[UIGestureRecognizer _updateGestureWithEvent:buttonEvent:] + 891 14 UIKit 0x000000011abc5e56 _UIGestureEnvironmentUpdate + 1395 15 CoreFoundation 0x000000011bf76e17 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23 16 CoreFoundation 0x000000011bf76d87 __CFRunLoopDoObservers + 391 17 CoreFoundation 0x000000011bf5bb9e __CFRunLoopRun + 1198 18 CoreFoundation 0x000000011bf5b494 CFRunLoopRunSpecific + 420 19 GraphicsServices 0x0000000121604a6f GSEventRunModal + 161 20 UIKit 0x000000011a692f34 UIApplicationMain + 159 21 CSChromium 0x000000010ed38e89 main + 937 22 libdyld.dylib 0x0000000123af068d start + 1 ) libc++abi.dylib: terminating with uncaught exception of type NSException
,
Sep 20 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a07a41ca9b61c1c5f5e2b5300ee3631922d31361 commit a07a41ca9b61c1c5f5e2b5300ee3631922d31361 Author: sczs <sczs@chromium.org> Date: Wed Sep 20 13:28:12 2017 [ios] Fixes History popup crash and navigation list. Adds a viewController property to historyPopupCoordinator, even though its not used (because historyPopup is still "boxed"), its needed for BrowserCoordinator (its super class). It also fixes the History popup bug, where the navigation list wasn't being updated. Bug: 766930 Change-Id: I24ab75fc55ef57900eba518c5c248a5b14e935d8 Reviewed-on: https://chromium-review.googlesource.com/674927 Reviewed-by: Mark Cogan <marq@chromium.org> Commit-Queue: Sergio Collazos <sczs@chromium.org> Cr-Commit-Position: refs/heads/master@{#503124} [modify] https://crrev.com/a07a41ca9b61c1c5f5e2b5300ee3631922d31361/ios/clean/chrome/browser/ui/history_popup/history_popup_coordinator.mm [modify] https://crrev.com/a07a41ca9b61c1c5f5e2b5300ee3631922d31361/ios/clean/chrome/browser/ui/toolbar/toolbar_coordinator.mm
,
Sep 20 2017
|
||
►
Sign in to add a comment |
||
Comment 1 by sczs@chromium.org
, Sep 20 2017