Print preview render process crashes when printing some pages

Description:

When I go to print a page, the print dialog appears with a gray rectangle that contains the text "Print preview failed" in place of the page preview. The only control enabled in the dialog is the cancel button. This happens only with some pages. Other pages preview and print as expected.

Additional info:

I'm running on X11 with the openbox WM and no desktop environment. I execute /usr/bin/chromium directly from the command line. I've seen this with both the default chromium profile and a custom chromium profile.

I first saw this in the 132 series but thought it might a transient so I didn't take note of the package version. I saw it again with 133.0.6943.53-1, 133.0.6943.126-1, 133.0.6943.141-1 and 134.0.6998.35-1. There is a difference between the 133 and 134 series in which URLs trigger the crash.

Example URLs

  1. https://stirri.com/products/hydra-uhf-tf
  2. https://adafruit.com/product/5186
  3. https://udd.debian.org/patches.cgi?src=chromium&version=134.0.6998.35-2

URL 1 triggers the crash in both 133 and 134.
URL 2 and 3 trigger the crash only in 134.

I installed the google-chrome package from AUR (version 134.0.6998.35-1) and tried the three URLs. All three worked as expected, showing the page preview and allowing me to continue with printing the page.

I also found a derelict machine with an install of Arch Linux that hadn't been updated in months. It has chromium 129.0.6668.58-1 installed and all three URLs work as expected.

At first I thought it was caused by pages that contained JPEG images. Then I hit it with URL 3 which does not have any JPEG images.

I quickly perused the chromium bug database but got overwhelmed by the number of print preview bugs. Most were Windows-specific problems. However, I did learn that this behavior is a symptom that appears when the print preview render process crashes.

The crash only affects the print preview render process. The print dialog appears to be in a separate process and all the tabs are in their own processes so they are not affected in any way.

The crash is recorded by chromium in its special URL (chrome://crashes) and produces a core dump. Using coredumpctl to examine the dump, I see that it's caused by signal 4 (ILL).

Steps to reproduce:

  1. Open one of the above three URLs, e.g., https://stirri.com/products/hydra-uhf-tf
  2. Right click on a blank part of the page
  3. Choose Print... in the context menu that appears