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

Issue 679160 link

Starred by 6 users

Issue metadata

Status: Fixed
Owner:
Closed: Nov 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 3
Type: Bug



Sign in to add a comment

Browser crash when printing page on a network printer.

Project Member Reported by mart...@martijnc.be, Jan 7 2017

Issue description

UserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2971.0 Safari/537.36

Steps to reproduce the problem:
1. Open webpage
2. Print the page (crtl+p)
3. Observer browser crash (this depends on which printer in the system default. Not all printers crash Chrome)

What is the expected behavior?
Chrome prints the page or shows an error message.

What went wrong?
Immediate browser crash.

Crashed report ID: 0ca2e7d1-82c4-4690-a0ed-b370a9b6620c (Server-ID: 0095fdc480000000)

How much crashed? Whole browser

Is it a problem with a plugin? N/A 

Did this work before? N/A 

Chrome version: 55.0.2883.87  Channel: stable
OS Version: 10
Flash Version: 

Only able to reproduce with a network printer (through Windows Server). The same printer works when installed on the local system directly. Printer is a Ricoh Aficio MP C2800.

When a working printer is set as the system default, the dialog opens and only crashes when the network printer is selected.

Another crash ID: a8337e78-163f-4258-9a32-bca44f200e2c (Server-ID: a59afdc480000000)
 
Labels: Needs-Triage-M55
Cc: brajkumar@chromium.org
Components: Internals>Printing
Labels: -Type-Bug Type-Bug-Regression
Owner: thestig@chromium.org
Status: Assigned (was: Unconfirmed)
Stack Trace:
------------
Thread 6 CRASHED [EXCEPTION_ACCESS_VIOLATION_READ @ 0xb8579bdc ] MAGIC SIGNATURE THREAD
Stack Quality52%Show frame trust levels
0x00007ffb1a60c85a	(ntdll.dll + 0x000ac85a )	memcpy
0x71c59fa9	(RCA9E130.DLL + 0x00159fa9 )	
0x71c76053	(RCA9E130.DLL + 0x00176053 )	
0x71afffff		
0x71c59aa7	(RCA9E130.DLL + 0x00159aa7 )	
0x71b73bff	(RCA9E130.DLL + 0x00073bff )	
0x71b89f1f	(RCA9E130.DLL + 0x00089f1f )	
0x71b41f97	(RCA9E130.DLL + 0x00041f97 )	
0x71c58e38	(RCA9E130.DLL + 0x00158e38 )	
0x71c0ffff	(RCA9E130.DLL + 0x0010ffff )	
0x71c36fa9	(RCA9E130.DLL + 0x00136fa9 )	
0x71c3530d	(RCA9E130.DLL + 0x0013530d )	
0x00007ffb133464bf	(WINSPOOL.DRV + 0x000064bf )	DocumentPropertiesWNative(HWND__ *,void *,unsigned short *,_devicemodeW *,unsigned long,_devicemodeW *,unsigned long)
0x00007ffb133a5fff	(WINSPOOL.DRV + 0x00065fff )	NCoreLibrary::TReferenceCount::ReferenceReachedZero()
0x00007ffb1339316f	(WINSPOOL.DRV + 0x0005316f )	NCoreLibrary::TReferenceCount::ReferenceReachedZero()
0x00007ffb13346573	(WINSPOOL.DRV + 0x00006573 )	DocumentPropertySheets
0x00007ffb13346587	(WINSPOOL.DRV + 0x00006587 )	DocumentPropertySheets
0x00007ffb133463dd	(WINSPOOL.DRV + 0x000063dd )	DocumentPropertiesWNative(HWND__ *,void *,unsigned short *,_devicemodeW *,unsigned long,_devicemodeW *,unsigned long)
0x00007ffb13346178	(WINSPOOL.DRV + 0x00006178 )	DocumentPropertiesW
0x00007ffad9c5b408	(chrome.dll -win_helper.cc:488 )	printing::CreateDevMode(void *,_devicemodeW *)
0x00007ffad9c5c658	(chrome.dll -print_backend_win.cc:255 )	printing::PrintBackendWin::GetPrinterSemanticCapsAndDefaults(std::basic_string<char,std::char_traits<char>,std::allocator<char> > const &,printing::PrinterSemanticCapsAndDefaults *)
0x00007ffada0e224b	(chrome.dll -print_preview_handler.cc:455 )	`anonymous namespace'::GetPrinterCapabilitiesOnBlockingPoolThread
0x00007ffad89b7ca3	(chrome.dll -bind_internal.h:339 )	base::internal::Invoker<base::internal::BindState<std::unique_ptr<base::Value,std::default_delete<base::Value> > (*)(std::basic_string<char,std::char_traits<char>,std::allocator<char> > const &),std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::unique_ptr<base::Value,std::default_delete<base::Value> > >::Run(base::internal::BindStateBase *)
0x00007ffad89b77c7	(chrome.dll -task_runner_util.h:22 )	base::internal::ReturnAsParamAdapter<std::unique_ptr<base::Value,std::default_delete<base::Value> > >(base::Callback<std::unique_ptr<base::Value,std::default_delete<base::Value> > ,1,1> const &,std::unique_ptr<base::Value,std::default_delete<base::Value> > *)
0x00007ffad911e269	(chrome.dll -post_task_and_reply_impl.cc:46 )	base::`anonymous namespace'::PostTaskAndReplyRelay::RunTaskAndPostReply
0x00007ffad90f4b72	(chrome.dll -sequenced_worker_pool.cc:1022 )	base::SequencedWorkerPool::Inner::ThreadLoop(base::SequencedWorkerPool::Worker *)
0x00007ffad90f315d	(chrome.dll -sequenced_worker_pool.cc:612 )	base::SequencedWorkerPool::Worker::Run()
0x00007ffad90f025d	(chrome.dll -simple_thread.cc:68 )	base::SimpleThread::ThreadMain()
0x00007ffad90b4f6c	(chrome.dll -platform_thread_win.cc:84 )	base::`anonymous namespace'::ThreadFunc
0x00007ffb17cd8363	(KERNEL32.DLL + 0x00008363 )	BaseThreadInitThunk
0x00007ffb1a5c70d0	(ntdll.dll + 0x000670d0 )	RtlUserThreadStart

This issue first seen on 52.0.2743.116, Below link gives in details of the number of instances in which the crash has occurred for associated builds:
https://crash.corp.google.com/browse?q=product.name%3D%27Chrome%27%20AND%20custom_data.ChromeCrashProto.ptype%3D%27browser%27%20AND%20custom_data.ChromeCrashProto.magic_signature_1.name%3D%27%5BThird%20party%20-%20rca9e130.dll%5D%20printing%3A%3ACreateDevMode%27&ignore_case=false&enable_rewrite=true&omit_field_name=&omit_field_value=&omit_field_opt=%3D#samplereports:5,productversion:1000

Note:
=====
1) This is a browser crash listed under chrome Stable build 55.0.2883.87 only for windows.
2) Observing 73 crash instances on various client ID's
3) No crashes observed on latest beta, dev and canary channels. Last crash is observed on #57.0.2975.0 with 1 instance
	
Used code search for the file "print_preview_handler.cc" and suspecting the below change
Review URL: https://codereview.chromium.org/1979903002

thestig@: Do you have any idea on this issue? Not sure that the above URL is the root cause for this issue.

Thanks!
Owner: rbpotter@chromium.org
thestig@ is OOO currently. I will try to take a look at this later this week.
Issue 679894 has been merged into this issue.

Comment 5 by ajha@chromium.org, Feb 13 2017

Gentle ping to get an update on this. Based on crash server there are 17 crashes from 12 clients on the latest stable: 56.0.2924.87.
Labels: -Pri-2 -Type-Bug-Regression -Needs-Triage-M55 Pri-3 Type-Bug
I doublt this is a regression. We don't keep crash reports around forever, so of course it looks like older versions of Chrome didn't have this crash.
Was able to reproduce this by installing a Ricoh C2800 RPCS Win 7 driver
in compatibility mode on a Windows 10 machine and trying to print. Given
that RPCS drivers are not actually available for Windows 8+, the cause
of this issue is likely trying to print from a Windows 8+ machine to a
driver type that is not compatible with the OS. When the printer is
plugged in directly, it is using a Windows 10 driver which solves the
problem. 

Will investigate to see if we can identify this compatibility issue when
querying the printer and display an error message instead of crashing.
Yesterday, we also observed that Edge won't to the affected printer and displays an error dialog.
Project Member

Comment 9 by bugdroid1@chromium.org, Mar 9 2017

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

commit f197528d286b7ecb15e1d0f8d6f05609d8c4b6a4
Author: rbpotter <rbpotter@chromium.org>
Date: Thu Mar 09 17:51:43 2017

Check for RPCS printers and return error if Win8+

RPCS printers will cause a crash in DocumentProperties on Windows 8 and
above. Detect these printers before calling DocumentProperties and
return invalid settings so that the preview displays an error message.

Change preview area so that "Loading.." does not overwrite the error
message when invalid printer settings are obtained.

BUG= 679160 
CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:closure_compilation

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

[modify] https://crrev.com/f197528d286b7ecb15e1d0f8d6f05609d8c4b6a4/chrome/browser/resources/print_preview/previewarea/preview_area.js
[modify] https://crrev.com/f197528d286b7ecb15e1d0f8d6f05609d8c4b6a4/chrome/browser/resources/print_preview/print_preview.js
[modify] https://crrev.com/f197528d286b7ecb15e1d0f8d6f05609d8c4b6a4/printing/backend/win_helper.cc

Labels: Needs-Feedback
Given that the fix in comment 9 went through a while ago, is this still an issue on current Canary?
I've verified that Chrome Canary shows an error message and no longer crashes.

After reinstalling the printer with the incorrect driver I verified that printing from a stable release caused a crash (Crash-ID a565ca28-5965-42e0-a11d-607f8d0e33fe (Server-ID: 47eefd9640000000)).

I then tried printing from the same printer on the same machine using the latest Canary release which showed an error message (see screenshot) instead.
printer_chrome.png
57.3 KB View Download
Status: Fixed (was: Assigned)
Closing this as the browser no longer crashes with these printers, but instead displays an error in print preview.
Issue 718922 has been merged into this issue.
Issue 724860 has been merged into this issue.

Sign in to add a comment