New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 863297 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Aug 15
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug



Sign in to add a comment

[Chrome][M67][Android 8.0] Chrome crashes when sharing a page via Print

Reported by seiyon.p...@gmail.com, Jul 13

Issue description

Steps to reproduce the problem:
1. Launch Chrome and load any pages
2. Go to Menu > Share... > Print
3. Press back key while preparing preview

What is the expected behavior?

What went wrong?
Chrome crashes when sharing a page via Print and the crash rate is 30%.

Crashed report ID: e479de488091af6a 6470be134cf7aca9 1b302d8b252fb6ea 659c99af7c4c5b93

How much crashed? Whole browser

Is it a problem with a plugin? No 

Did this work before? N/A 

Chrome version: 67.0.3396.99  Channel: stable
OS Version: 8.0
Flash Version: 

It is also reproducible on both Chrome Beta 68.0.3440.40 and Chrome Dev 69.0.3475.0.
 
bugreport_Chrome crashes when sharing a page via Print.txt
7.7 MB View Download
Cc: vkuzkokov@chromium.org jbanavatu@chromium.org
Components: UI>Browser>PrintPreview
Labels: Needs-triage-Mobile Triaged-Mobile
Tested the issue on Android and no crash was observed.

Steps Followed:
1.Launch chrome and load any page
2.Go to menu>> Share>>Print
3.Tap on back while print preview is preparing and no crash was observed.

Chrome version:
67.0.3396.87 (stable), 69.0.3475.0 (Dev)

OS:
Android 8.0 build/OPD1.170816.017

Android device:
Pixel 2 XL(Taimen) 

Observations:
1. Unable to reproduce this crash as per steps mentioned in comment#0.
2. Hence looking from the crash id mentioned in comment #0, observed that similar issue is filed and both stack trace are same.
3. Internal bug was raised for better stack trace of this-Tracking bug-id:b/74730856

As this issue is related to print, hence adding respective component. Ccing @vkuzkokov to look into this issue.

@vkuzkokov: Could you please look into this issue.

Thanks!
b/74730856 won't help here much since the rest of the stack doesn't seem to have symbols whatsoever.

There's nothing I can do here better than someone who works on Clank.
Components: -UI>Browser>PrintPreview Internals>Printing
Is the device where this crash is occurring running a custom Android build?
thestig@ the device is not running a custom Android build.
It's reproducible on Pixel 2 XL, as well.
Cc: ivanpe@chromium.org ctzsm@chromium.org
ivanpe: Do you know why we don't have symbols for base.odex?
seiyon.park@,

Does this happen with other Android build? such as Android M/N/OMR1/P?
Does this happen with Chrome Beta/Dev/Canary (68/69)?
What's the page url you are seeing this crash?
Could you please take a full bug report if possible?
A Video record with "Show taps" on in Developer option will be very helpful for seeing the repro steps.

I tried with Chrome M67, can't repro this crash either.
Labels: Needs-Feedback
Not sure about base.odex.

(1)  If it is a system symbol file, then this is somewhat expected because we don't have many system symbols for Android.

(2) If this is a module we build and ship with Chrome, then someone should update the build scripts to also upload symbols for this module.  At this point, the Crash service doesn't have any symbol files for a module called base.odex.
ctzsm@ Thanks for your prompt feedback.
I'll circle back to you with answers on your questions in Comment 6.
Project Member

Comment 10 by sheriffbot@chromium.org, Jul 18

Labels: -Needs-Feedback
Thank you for providing more feedback. Adding the requester to the cc list.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
ctzsm@ could you please check the answers on your question in Comment 6?

Does this happen with other Android build? such as Android M/N/OMR1/P?
  => Yes. It's reproduced on O and OMR1
Does this happen with Chrome Beta/Dev/Canary (68/69)?
  => Yes
What's the page url you are seeing this crash?
  => It's reproduced on any page.
Could you please take a full bug report if possible?
  => I attached bug report(bugreport_Nexus5X.txt)
A Video record with "Show taps" on in Developer option will be very helpful for seeing the repro steps.
  => I attached video(screenrecord_Nexus5X.mp4)

Crah Ids
- d835c7a4c57af47b
- 32b95bcf644df330
bugreport_Nexus5X.txt
10.8 MB View Download
screenrecord_Nexus5X.zip.001
10.0 MB Download
screenrecord_Nexus5X.zip.002
10.0 MB Download
screenrecord_Nexus5X.zip.003
990 KB Download
Cc: -ctzsm@chromium.org changwan@chromium.org
Owner: ctzsm@chromium.org
Status: Assigned (was: Unconfirmed)
seiyon.park@, thanks for the answers and attachments, I can repro this bug now, looks like there is a timing of step 3, and related to how complex the web page is. Will investigate this more.

PS: I'll be OOO next week, will try to make some progress before that.
Cc: tedc...@chromium.org
tedchoc@, this is a chrome issue, but ctzsm@ is interested in looking at it as he's been working on webview printing for a while. Would it be ok?
Yes, please do :-)
Project Member

Comment 18 by bugdroid1@chromium.org, Aug 10

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

commit f433642fc86f496c48a3a25b3e57146d3c8edf87
Author: Shimi Zhang <ctzsm@chromium.org>
Date: Fri Aug 10 19:58:04 2018

[Printing] Remove extra |askUserForSettingsReply()| call

After we migrated native side callback to |OnceCallback|, it exposed
that we sometimes call |askUserForSettingsReply()| more than once. The
|DCHECK(callback_)| in |PrintingContextAndroid::AskUserForSettingsReply|
was violated.

Since |Printingcontext.askUserForSettings()| will call
|askUserForSettingsReply()| for sure, we don't need to call it in
other places.

This CL removes a call site of |askUserForSettingsReply| in
|PrintingControllerImpl|.

Bug:  863297 
Change-Id: If1c34a4a89acaca461074231ab1bef8edef9baae
Reviewed-on: https://chromium-review.googlesource.com/1161604
Commit-Queue: Shimi Zhang <ctzsm@chromium.org>
Reviewed-by: Changwan Ryu <changwan@chromium.org>
Reviewed-by: Ted Choc <tedchoc@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Cr-Commit-Position: refs/heads/master@{#582301}
[modify] https://crrev.com/f433642fc86f496c48a3a25b3e57146d3c8edf87/chrome/android/javatests/src/org/chromium/chrome/browser/printing/PrintingControllerTest.java
[modify] https://crrev.com/f433642fc86f496c48a3a25b3e57146d3c8edf87/printing/android/java/src/org/chromium/printing/PrintingContext.java
[modify] https://crrev.com/f433642fc86f496c48a3a25b3e57146d3c8edf87/printing/android/java/src/org/chromium/printing/PrintingContextInterface.java
[modify] https://crrev.com/f433642fc86f496c48a3a25b3e57146d3c8edf87/printing/android/java/src/org/chromium/printing/PrintingControllerImpl.java

Project Member

Comment 19 by bugdroid1@chromium.org, Aug 14

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

commit 46582a40a0dfad471818e1bd04d2514d20b71adc
Author: Shimi Zhang <ctzsm@chromium.org>
Date: Tue Aug 14 18:30:38 2018

[Printing] Change |showSystemDialogDone()| timing

In |window.print()| code path for Android, we have the call stack like
this:

  PrintJobWorker::GetSettingsWithUI() ->
  PrintingContextAndroid::AskUserForSettings() ->
  PrintingContext.showPrintDialog() (Java)

We have set |callback_| in |PrintingContextAndroid| to be
|PrintJobWorker::GetSettingsDone()|, but didn't call it in later stage
unless something fails.

This CL makes |PrintingControllerImpl| call
|PrintingContext.showSystemDialogDone()| no matter what happens. This is
because the first |GetSettingsWithUI()| for |window.print()| on Android
is only to wake up |PrintManager| to start printing job. We will set
the real settings in later |GetSettingsWithUI()| call.

Bug:  863297 
Change-Id: I3be0a3dceab134db7a47e0c1b48ccd1802e74447
Reviewed-on: https://chromium-review.googlesource.com/1162754
Reviewed-by: Changwan Ryu <changwan@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Commit-Queue: Shimi Zhang <ctzsm@chromium.org>
Cr-Commit-Position: refs/heads/master@{#582980}
[modify] https://crrev.com/46582a40a0dfad471818e1bd04d2514d20b71adc/chrome/android/javatests/src/org/chromium/chrome/browser/printing/PrintingControllerTest.java
[modify] https://crrev.com/46582a40a0dfad471818e1bd04d2514d20b71adc/printing/android/java/src/org/chromium/printing/PrintingContext.java
[modify] https://crrev.com/46582a40a0dfad471818e1bd04d2514d20b71adc/printing/android/java/src/org/chromium/printing/PrintingContextInterface.java
[modify] https://crrev.com/46582a40a0dfad471818e1bd04d2514d20b71adc/printing/android/java/src/org/chromium/printing/PrintingController.java
[modify] https://crrev.com/46582a40a0dfad471818e1bd04d2514d20b71adc/printing/android/java/src/org/chromium/printing/PrintingControllerImpl.java

Issue 873091 has been merged into this issue.
Status: Fixed (was: Assigned)

Sign in to add a comment