Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
for a split second, documentElement might be missing, causing getHtml() to crash. I had a program that was doing page stuff and calling getHtml() like every 10 milliseconds (100 times per second), and got an unexpected crash. Was able to create a small reproducible sample: ```php <?php declare(strict_types=1); require_once('vendor/autoload.php'); $chromeBinary = "/snap/bin/chromium"; $browser_factory = new \HeadlessChromium\BrowserFactory($chromeBinary); $browser_factory->setOptions([ "headless" => true, "noSandbox" => true, 'windowSize' => [1000, 1000] ]); $browser = $browser_factory->createBrowser(); $page = $browser->createPage(); for ($i = 0; $i < 100; ++$i) { $page->navigate("http://example.com"); $html = $page->getHtml(); $page->navigate("http://example.org"); $html = $page->getHtml(); } ``` consistently crash with: ``` PHP Fatal error: Uncaught HeadlessChromium\Exception\JavascriptException: Error during javascript evaluation: TypeError: Cannot read properties of null (reading 'outerHTML') at <anonymous>:1:26 in /home/hans/projects/ibkr/vendor/chrome-php/chrome/src/PageUtils/PageEvaluation.php:89 Stack trace: #0 /home/hans/projects/ibkr/vendor/chrome-php/chrome/src/PageUtils/PageEvaluation.php(108): HeadlessChromium\PageUtils\PageEvaluation->waitForResponse() chrome-php#1 /home/hans/projects/ibkr/vendor/chrome-php/chrome/src/Page.php(894): HeadlessChromium\PageUtils\PageEvaluation->getReturnValue() chrome-php#2 /home/hans/projects/ibkr/test_crash.php(16): HeadlessChromium\Page->getHtml() chrome-php#3 {main} thrown in /home/hans/projects/ibkr/vendor/chrome-php/chrome/src/PageUtils/PageEvaluation.php on line 89 ```
- Loading branch information