Package: firefox Version: 69.0.1-1 Severity: normal Tags: upstream Tested with upstream 69.0.2, reproduced. Reported at https://github.com/webcompat/web-bugs/issues/41756
Note that Debian package of Firefox 69.0.1 will produce about 2GB of logs in geckodriver.log, while upstream firefox 69.0.2 will be far more brief. Problem web page: https://www.public.nm.eurocontrol.int/PUBPORTAL/gateway/spec/index.html Loading through selenium / geckodriver / marionette the above website crashes Firefox 69.0.1 (Debian package) and 69.0.2 (tar.bz2 download from mozilla.org) on amd64 architecture. The very same selenium / geckodriver / marionette script in non-headless mode (just comment out the config line for headless) works correctly. The very same selenium / geckodriver / marionette script in headless mode with Firefox ESR 60.9.0esr (Debian package 60.9.0esr-1~deb9u1) (just change the binary_location option to point to it) works correctly. Loading the very same website in Firefox in normal user mode (not scripted through marionette) works fine (all tested versions). Reproduction needs python3-selenium firefoxdriver Debian packages and geckodriver from https://github.com/mozilla/geckodriver/releases (my understanding is that source code for these downloads is in the mozilla tree, building instructions at https://firefox-source-docs.mozilla.org/testing/geckodriver/Building.html the binary download page link to the exact revision of the tree they are built from) -- Package-specific info: -- Extensions information Name: Amazon.com Location: /usr/lib/firefox/browser/omni.ja Package: firefox Status: enabled Name: Bing Location: /usr/lib/firefox/browser/omni.ja Package: firefox Status: enabled Name: Dark theme Location: /usr/lib/firefox/browser/omni.ja Package: firefox Status: user-disabled Name: Default theme Location: /usr/lib/firefox/omni.ja Package: firefox Status: enabled Name: DuckDuckGo Location: /usr/lib/firefox/browser/omni.ja Package: firefox Status: enabled Name: eBay Location: /usr/lib/firefox/browser/omni.ja Package: firefox Status: enabled Name: Firefox Monitor Location: /usr/lib/firefox/browser/features/fxmoni...@mozilla.org.xpi Package: firefox Status: enabled Name: Firefox Screenshots Location: /usr/lib/firefox/browser/features/screensh...@mozilla.org.xpi Package: firefox Status: enabled Name: Form Autofill Location: /usr/lib/firefox/browser/features/formautof...@mozilla.org.xpi Package: firefox Status: enabled Name: Google Location: /usr/lib/firefox/browser/omni.ja Package: firefox Status: enabled Name: Light theme Location: /usr/lib/firefox/browser/omni.ja Package: firefox Status: user-disabled Name: Twitter Location: /usr/lib/firefox/browser/omni.ja Package: firefox Status: enabled Name: Web Compat Location: /home/master/.mozilla/firefox/8nobfoud.default-release/features/{2d31bdd3-1486-4ea7-bb62-61338e8f7d96}/webcom...@mozilla.org.xpi Status: enabled Name: WebCompat Reporter Location: /usr/lib/firefox/browser/features/webcompat-repor...@mozilla.org.xpi Package: firefox Status: user-disabled Name: Wikipedia (en) Location: /usr/lib/firefox/browser/omni.ja Package: firefox Status: enabled -- Plugins information Name: Shockwave Flash (32.0.0.142) Location: /usr/lib/browser-plugin-freshplayer-pepperflash/libfreshwrapper-flashplayer.so Package: browser-plugin-freshplayer-pepperflash Status: enabled -- Addons package information ii browser-plugin 0.3.9-2 amd64 PPAPI-host NPAPI-plugin adapter f ii firefox 69.0.1-1 amd64 Mozilla Firefox web browser -- System Information: Debian Release: 9.11 APT prefers oldstable APT policy: (550, 'oldstable'), (500, 'stable'), (400, 'testing'), (200, 'unstable'), (1, 'experimental') Architecture: amd64 (x86_64) Kernel: Linux 4.9.0-9-amd64 (SMP w/8 CPU cores) Locale: LANG=fr_LU.UTF-8, LC_CTYPE=fr_LU.UTF-8 (charmap=UTF-8), LANGUAGE=fr_LU.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash Init: systemd (via /run/systemd/system) Versions of packages firefox depends on: ii debianutils 4.8.1.1 ii fontconfig 2.11.0-6.7+b1 ii libasound2 1.1.3-5 ii libatk1.0-0 2.34.0-1 ii libc6 2.29-2 ii libcairo-gobject2 1.16.0-4 ii libcairo2 1.16.0-4 ii libdbus-1-3 1.10.28-0+deb9u1 ii libdbus-glib-1-2 0.108-2 ii libevent-2.1-6 2.1.8-stable-4 ii libffi6 3.2.1-6 ii libfontconfig1 2.13.1-2 ii libfreetype6 2.9.1-3 ii libgcc1 1:8.3.0-6 ii libgdk-pixbuf2.0-0 2.36.5-2+deb9u2 ii libglib2.0-0 2.58.3-2+deb10u1 ii libgtk-3-0 3.24.5-1 ii libnspr4 2:4.21-2 ii libnss3 2:3.45-1 ii libpango-1.0-0 1.42.4-7~deb10u1 ii libsqlite3-0 3.29.0-2 ii libstartup-notification0 0.12-4+b2 ii libstdc++6 9.2.1-8 ii libx11-6 2:1.6.4-3+deb9u1 ii libx11-xcb1 2:1.6.4-3+deb9u1 ii libxcb-shm0 1.12-1 ii libxcb1 1.12-1 ii libxcomposite1 1:0.4.4-2 ii libxdamage1 1:1.1.4-2+b3 ii libxext6 2:1.3.3-1+b2 ii libxfixes3 1:5.0.3-1 ii libxrender1 1:0.9.10-1 ii libxt6 1:1.1.5-1 ii procps 2:3.3.12-3+deb9u1 ii zlib1g 1:1.2.11.dfsg-1 Versions of packages firefox recommends: ii libavcodec-extra57 7:3.4.3-1 ii libavcodec58 7:4.1.4-1~deb10u1 Versions of packages firefox suggests: ii fonts-lmodern 2.004.5-3 ii fonts-stix [otf-stix] 1.1.1-4 ii libcanberra0 0.30-3 ii libgssapi-krb5-2 1.17-3 ii libgtk2.0-0 2.24.31-2 ii otf-stix 1.1.1-1 ii pulseaudio 10.0-1+deb9u1 -- no debconf information
from __future__ import print_function import sys #import selenium from selenium import webdriver #from selenium.webdriver.common.desired_capabilities import DesiredCapabilities from selenium.webdriver.support import expected_conditions as sec from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By def eprint(*args, **kwargs): print(*args, file=sys.stderr, **kwargs) options = webdriver.FirefoxOptions() options.binary_location = "/usr/bin/firefox" #options.binary_location = "/path/to/upstream/firefox" options.headless=True options.set_capability('acceptInsecureCerts', False) driver = webdriver.Firefox(executable_path='/path/to/geckodriver', options=options) try: eprint("about to get") driver.get('https://www.public.nm.eurocontrol.int/PUBPORTAL/gateway/spec/index.html') eprint("about to wait") WebDriverWait(driver, 3).until(sec.presence_of_element_located((By.ID, "STATUS_MAP_CONTENTS_ELEMENT_ID"))) finally: for wid in driver.window_handles: driver.switch_to.window(wid) driver.close()