mirror of
https://github.com/daijro/camoufox.git
synced 2026-08-19 00:00:58 +00:00
Merge pull request #273 from joaoneves0/fix/xvfb-leak
fix: Ensure virtual_display is killed even if browser.close fails
This commit is contained in:
@@ -317,9 +317,13 @@ async def async_attach_vd(
|
||||
_close = browser.close
|
||||
|
||||
async def new_close(*args: Any, **kwargs: Any):
|
||||
await _close(*args, **kwargs)
|
||||
if virtual_display:
|
||||
virtual_display.kill()
|
||||
try:
|
||||
await _close(*args, **kwargs)
|
||||
except Exception:
|
||||
raise
|
||||
finally:
|
||||
if virtual_display:
|
||||
virtual_display.kill()
|
||||
|
||||
browser.close = new_close
|
||||
browser._virtual_display = virtual_display
|
||||
@@ -339,9 +343,13 @@ def sync_attach_vd(
|
||||
_close = browser.close
|
||||
|
||||
def new_close(*args: Any, **kwargs: Any):
|
||||
_close(*args, **kwargs)
|
||||
if virtual_display:
|
||||
virtual_display.kill()
|
||||
try:
|
||||
_close(*args, **kwargs)
|
||||
except Exception:
|
||||
raise
|
||||
finally:
|
||||
if virtual_display:
|
||||
virtual_display.kill()
|
||||
|
||||
browser.close = new_close
|
||||
browser._virtual_display = virtual_display
|
||||
|
||||
Reference in New Issue
Block a user