Skip to content

Commit 6dece1d

Browse files
authored
Merge pull request #1498 from seleniumbase/two-fixes-for-windows
Two fixes for Windows
2 parents 79417a9 + 95b3f97 commit 6dece1d

File tree

3 files changed

+26
-15
lines changed

3 files changed

+26
-15
lines changed

seleniumbase/__version__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
# seleniumbase package
2-
__version__ = "4.3.3"
2+
__version__ = "4.3.4"

seleniumbase/core/browser_launcher.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -278,9 +278,13 @@ def add_chrome_ext_dir(chrome_options, dir_path):
278278
if arg.startswith("--load-extension="):
279279
option_exists = True
280280
chrome_options.arguments.remove(arg)
281-
chrome_options.add_argument("%s,%s" % (arg, dir_path))
281+
chrome_options.add_argument(
282+
"%s,%s" % (arg, os.path.realpath(dir_path))
283+
)
282284
if not option_exists:
283-
chrome_options.add_argument("--load-extension=%s" % dir_path)
285+
chrome_options.add_argument(
286+
"--load-extension=%s" % os.path.realpath(dir_path)
287+
)
284288
return chrome_options
285289

286290

seleniumbase/undetected/__init__.py

Lines changed: 19 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -440,22 +440,22 @@ def start_session(self, capabilities=None, browser_profile=None):
440440
)
441441

442442
def quit(self):
443-
logger.debug("Closing webdriver")
444-
if hasattr(self, "service") and getattr(self.service, "process", None):
445-
self.service.process.kill()
446443
try:
447-
if self.reactor and isinstance(self.reactor, Reactor):
448-
logger.debug("shutting down reactor")
449-
self.reactor.event.set()
450-
except Exception:
451-
pass
452-
try:
453-
logger.debug("Killing browser")
444+
logger.debug("Terminating the browser")
454445
os.kill(self.browser_pid, 15)
455446
except TimeoutError as e:
456447
logger.debug(e, exc_info=True)
457448
except Exception:
458449
pass
450+
if hasattr(self, "service") and getattr(self.service, "process", None):
451+
logger.debug("Stopping webdriver service")
452+
self.service.stop()
453+
try:
454+
if self.reactor and isinstance(self.reactor, Reactor):
455+
logger.debug("Shutting down reactor")
456+
self.reactor.event.set()
457+
except Exception:
458+
pass
459459
if (
460460
hasattr(self, "keep_user_data_dir")
461461
and hasattr(self, "user_data_dir")
@@ -486,10 +486,17 @@ def quit(self):
486486

487487
def __del__(self):
488488
try:
489-
super().quit()
489+
if "win32" in PLATFORM:
490+
self.stop_client()
491+
self.command_executor.close()
492+
else:
493+
super().quit()
494+
except Exception:
495+
pass
496+
try:
497+
self.quit()
490498
except Exception:
491499
pass
492-
self.quit()
493500

494501
def __enter__(self):
495502
return self

0 commit comments

Comments
 (0)