summaryrefslogtreecommitdiff
path: root/qutebrowser/misc/sql.py
diff options
context:
space:
mode:
Diffstat (limited to 'qutebrowser/misc/sql.py')
-rw-r--r--qutebrowser/misc/sql.py11
1 files changed, 6 insertions, 5 deletions
diff --git a/qutebrowser/misc/sql.py b/qutebrowser/misc/sql.py
index 2603ce23e..28a97fd77 100644
--- a/qutebrowser/misc/sql.py
+++ b/qutebrowser/misc/sql.py
@@ -24,12 +24,12 @@ import collections
import contextlib
import dataclasses
import types
-from typing import Any, Dict, Iterator, List, Mapping, MutableSequence, Optional, Type
+from typing import Any, Dict, Iterator, List, Mapping, MutableSequence, Optional, Type, Union
from qutebrowser.qt.core import QObject, pyqtSignal
from qutebrowser.qt.sql import QSqlDatabase, QSqlError, QSqlQuery
-from qutebrowser.qt import sip
+from qutebrowser.qt import sip, machinery
from qutebrowser.utils import debug, log
@@ -149,6 +149,7 @@ class BugError(Error):
def raise_sqlite_error(msg: str, error: QSqlError) -> None:
"""Raise either a BugError or KnownError."""
error_code = error.nativeErrorCode()
+ primary_error_code: Union[SqliteErrorCode, str]
try:
# https://sqlite.org/rescode.html#pve
primary_error_code = SqliteErrorCode(int(error_code) & 0xff)
@@ -351,10 +352,10 @@ class Query:
def _validate_bound_values(self):
"""Make sure all placeholders are bound."""
qt_bound_values = self.query.boundValues()
- try:
+ if machinery.IS_QT5:
# Qt 5: Returns a dict
- values = qt_bound_values.values()
- except AttributeError:
+ values = list(qt_bound_values.values())
+ else:
# Qt 6: Returns a list
values = qt_bound_values