New issue
Advanced search Search tips

Issue 703102 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Mar 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: iOS
Pri: 2
Type: Bug



Sign in to add a comment

reading_list::ReadingListDistillerPage::ContinuePageDistillation crash

Project Member Reported by olivierrobin@chromium.org, Mar 20 2017

Issue description

App Version (from "Chrome Settings > About Chrome"): 57
iOS Version: 10.3
Device: all

Stack
	0x0000000100192b88	(Chrome -reading_list_distiller_page.mm:176 )	reading_list::ReadingListDistillerPage::ContinuePageDistillation()
0x0000000100192b84	(Chrome -reading_list_distiller_page.mm:176 )	reading_list::ReadingListDistillerPage::ContinuePageDistillation()
0x0000000100192f9c	(Chrome -reading_list_distiller_page.mm:272 )	___ZN12reading_list24ReadingListDistillerPage19HandleWikipediaPageEv_block_invoke
0x000000019cdb987c	(WebKit + 0x0027e87c )	std::__1::__function::__func<-[WKWebView evaluateJavaScript:completionHandler:]::$_0, std::__1::allocator<-[WKWebView evaluateJavaScript:completionHandler:]::$_0>, void (API::SerializedScriptValue*, bool, WebCore::ExceptionDetails const&, WebKit::CallbackBase::Error)>::operator()(API::SerializedScriptValue*&&, bool&&, WebCore::ExceptionDetails const&, WebKit::CallbackBase::Error&&)
0x000000019ccccfa8	(WebKit + 0x00191fa8 )	WebKit::GenericCallback<API::SerializedScriptValue*, bool, WebCore::ExceptionDetails const&>::performCallbackWithReturnValue(API::SerializedScriptValue*, bool, WebCore::ExceptionDetails const&)
0x000000019cccce74	(WebKit + 0x00191e74 )	WebKit::WebPageProxy::scriptValueCallback(IPC::DataReference const&, bool, WebCore::ExceptionDetails const&, unsigned long long)
0x000000019cce30b8	(WebKit + 0x001a80b8 )	void IPC::handleMessage<Messages::WebPageProxy::ScriptValueCallback, WebKit::WebPageProxy, void (WebKit::WebPageProxy::*)(IPC::DataReference const&, bool, WebCore::ExceptionDetails const&, unsigned long long)>(IPC::MessageDecoder&, WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)(IPC::DataReference const&, bool, WebCore::ExceptionDetails const&, unsigned long long))
0x000000019cba01cc	(WebKit + 0x000651cc )	IPC::MessageReceiverMap::dispatchMessage(IPC::Connection&, IPC::MessageDecoder&)
0x000000019cd23610	(WebKit + 0x001e8610 )	WebKit::WebProcessProxy::didReceiveMessage(IPC::Connection&, IPC::MessageDecoder&)
0x000000019cb693e4	(WebKit + 0x0002e3e4 )	IPC::Connection::dispatchMessage(std::__1::unique_ptr<IPC::MessageDecoder, std::__1::default_delete<IPC::MessageDecoder> >)
0x000000019cb6b9fc	(WebKit + 0x000309fc )	IPC::Connection::dispatchOneMessage()

 
Project Member

Comment 1 by bugdroid1@chromium.org, Mar 20 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/aca5aa3e2873c888092bf83668286b515e891bfb

commit aca5aa3e2873c888092bf83668286b515e891bfb
Author: olivierrobin <olivierrobin@chromium.org>
Date: Mon Mar 20 14:58:28 2017

[Reading List iOS] Test WebState on JavaScript return.

ContinuePageDistillation can be called on return from JavaScript call.
WebState can be deleted (specially if there was an error).
So test before dereferencing it.

BUG= 703102 

Review-Url: https://codereview.chromium.org/2761733003
Cr-Commit-Position: refs/heads/master@{#458061}

[modify] https://crrev.com/aca5aa3e2873c888092bf83668286b515e891bfb/ios/chrome/browser/reading_list/reading_list_distiller_page.mm

Project Member

Comment 2 by bugdroid1@chromium.org, Mar 20 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/aca5aa3e2873c888092bf83668286b515e891bfb

commit aca5aa3e2873c888092bf83668286b515e891bfb
Author: olivierrobin <olivierrobin@chromium.org>
Date: Mon Mar 20 14:58:28 2017

[Reading List iOS] Test WebState on JavaScript return.

ContinuePageDistillation can be called on return from JavaScript call.
WebState can be deleted (specially if there was an error).
So test before dereferencing it.

BUG= 703102 

Review-Url: https://codereview.chromium.org/2761733003
Cr-Commit-Position: refs/heads/master@{#458061}

[modify] https://crrev.com/aca5aa3e2873c888092bf83668286b515e891bfb/ios/chrome/browser/reading_list/reading_list_distiller_page.mm

Labels: Merge-Request-58
Status: Fixed (was: Started)
Project Member

Comment 4 by sheriffbot@chromium.org, Mar 21 2017

Labels: -Merge-Request-58 Hotlist-Merge-Approved Merge-Approved-58
Your change meets the bar and is auto-approved for M58. Please go ahead and merge the CL to branch 3029 manually. Please contact milestone owner if you have questions.
Owners: amineer@(Android), cmasso@(iOS), bhthompson@(ChromeOS), govind@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Project Member

Comment 5 by bugdroid1@chromium.org, Mar 23 2017

Labels: -merge-approved-58 merge-merged-3029
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b47af0d4158c19302ac298009e80945b0fc4c3d1

commit b47af0d4158c19302ac298009e80945b0fc4c3d1
Author: Olivier Robin <olivierrobin@chromium.org>
Date: Thu Mar 23 09:01:54 2017

[Reading List iOS] Test WebState on JavaScript return.

ContinuePageDistillation can be called on return from JavaScript call.
WebState can be deleted (specially if there was an error).
So test before dereferencing it.

BUG= 703102 

Review-Url: https://codereview.chromium.org/2761733003
Cr-Commit-Position: refs/heads/master@{#458061}
(cherry picked from commit aca5aa3e2873c888092bf83668286b515e891bfb)

Review-Url: https://codereview.chromium.org/2767193003 .
Cr-Commit-Position: refs/branch-heads/3029@{#379}
Cr-Branched-From: 939b32ee5ba05c396eef3fd992822fcca9a2e262-refs/heads/master@{#454471}

[modify] https://crrev.com/b47af0d4158c19302ac298009e80945b0fc4c3d1/ios/chrome/browser/reading_list/reading_list_distiller_page.mm

Sign in to add a comment