diff options
author | Florian Bruhin <me@the-compiler.org> | 2023-09-24 21:11:43 +0200 |
---|---|---|
committer | Florian Bruhin <me@the-compiler.org> | 2023-09-24 21:17:20 +0200 |
commit | 1478f9dabed864715f1df8e171c8ab7d0221fb30 (patch) | |
tree | 57e4ea1ddd05ecfe2b27295f856fb33ce4fbf67a | |
parent | 90d16b596a74679177cacc12adc2c4c04405ed42 (diff) | |
download | qutebrowser-1478f9dabed864715f1df8e171c8ab7d0221fb30.tar.gz qutebrowser-1478f9dabed864715f1df8e171c8ab7d0221fb30.zip |
Work around QtWebEngine bug when serializing empty history
See https://bugreports.qt.io/browse/QTBUG-117489
Closes #7913
(cherry picked from commit 5a05a93e38c1f790acbc8389793dd527c2b310f8)
-rw-r--r-- | qutebrowser/browser/webengine/webenginetab.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/qutebrowser/browser/webengine/webenginetab.py b/qutebrowser/browser/webengine/webenginetab.py index 938e100ff..f9033f963 100644 --- a/qutebrowser/browser/webengine/webenginetab.py +++ b/qutebrowser/browser/webengine/webenginetab.py @@ -613,7 +613,13 @@ class WebEngineHistoryPrivate(browsertab.AbstractHistoryPrivate): self._history = cast(QWebEngineHistory, None) def serialize(self): - return qtutils.serialize(self._history) + data = qtutils.serialize(self._history) + # WORKAROUND for https://bugreports.qt.io/browse/QTBUG-117489 + if data == b"\x00\x00\x00\x04\x00\x00\x00\x01\x00\x00\x00\x00": + return b"\x00\x00\x00\x04\x00\x00\x00\x00\xff\xff\xff\xff" + # | '-- count '-- currentIndex + # '-- kHistoryStreamVersion + return data def deserialize(self, data): qtutils.deserialize(data, self._history) |