diff options
author | Florian Bruhin <me@the-compiler.org> | 2020-04-27 11:59:57 +0200 |
---|---|---|
committer | Florian Bruhin <me@the-compiler.org> | 2020-04-27 12:00:46 +0200 |
commit | 63ade39d2ca10cc086b9d4e8fb6131ef3b4c4782 (patch) | |
tree | 8b331b109bf84a0948dfba2d09a5c021ca0dd76d /qutebrowser/misc/sessions.py | |
parent | 485708f1a371cf4b3fc004185d014849f950659b (diff) | |
download | qutebrowser-63ade39d2ca10cc086b9d4e8fb6131ef3b4c4782.tar.gz qutebrowser-63ade39d2ca10cc086b9d4e8fb6131ef3b4c4782.zip |
Add stop-gap measure for sessions with Qt 5.15
See #5359
Diffstat (limited to 'qutebrowser/misc/sessions.py')
-rw-r--r-- | qutebrowser/misc/sessions.py | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/qutebrowser/misc/sessions.py b/qutebrowser/misc/sessions.py index 1bcd42baf..b0116eb09 100644 --- a/qutebrowser/misc/sessions.py +++ b/qutebrowser/misc/sessions.py @@ -24,6 +24,8 @@ import os.path import itertools import urllib import typing +import glob +import shutil from PyQt5.QtCore import QUrl, QObject, QPoint, QTimer, pyqtSlot from PyQt5.QtWidgets import QApplication @@ -59,6 +61,16 @@ def init(parent=None): parent: The parent to use for the SessionManager. """ base_path = os.path.join(standarddir.data(), 'sessions') + + # WORKAROUND for https://github.com/qutebrowser/qutebrowser/issues/5359 + backup_path = os.path.join(base_path, 'before-qt-515') + if (os.path.exists(base_path) and + not os.path.exists(backup_path) and + qtutils.version_check('5.15', compiled=False)): + os.mkdir(backup_path) + for filename in glob.glob(os.path.join(base_path, '*.yml')): + shutil.copy(filename, backup_path) + try: os.mkdir(base_path) except FileExistsError: |