aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2021-06-21 15:58:38 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2021-06-23 18:58:41 +0200
commite6fb38a92efac1e098a87d2a6947807708652369 (patch)
tree27b52315e7024325fbdde73d685652c98f7578f5
parentced7d7b9e1a0cd771be36651558332e0010028bb (diff)
PySide6/signature: Fix error handling
Raise an error if != 2 tokens are obtained from the argument, changing packages/shiboken6/files.dir/shibokensupport/signature/parser.py", line 121, in _parse_line name, ann = tokens ValueError: too many values to unpack (expected 2) to packages/shiboken6/files.dir/shibokensupport/signature/parser.py", line 119, in _parse_line raise SystemError(f'Invalid argument "{arg}" in "{line}".') SystemError: Invalid argument "method:QWebEngineHttpRequest::Method" in "0:PySide6.QtWebEngineCore.QWebEngineHttpRequest(self,url:typing.Union[PySide6.QtCore.QUrl, QString]=QUrl(),method:QWebEngineHttpRequest::Method)". Pick-to: 6.1 Change-Id: I16e0f32bb3332deadc0a8819a6ba7abd6b12a941 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
-rw-r--r--sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/parser.py11
1 files changed, 5 insertions, 6 deletions
diff --git a/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/parser.py b/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/parser.py
index 788aaaa0d..8d8235b4a 100644
--- a/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/parser.py
+++ b/sources/shiboken6/shibokenmodule/files.dir/shibokensupport/signature/parser.py
@@ -112,12 +112,11 @@ def _parse_line(line):
args = []
for idx, arg in enumerate(arglist):
tokens = arg.split(":")
- if len(tokens) < 2:
- if idx == 0 and tokens[0] in ("self", "cls"):
- tokens = 2 * tokens # "self: self"
- else:
- # This should never happen again (but who knows?)
- raise SystemError(f'Invalid argument "{arg}" in "{line}".')
+ if len(tokens) < 2 and idx == 0 and tokens[0] in ("self", "cls"):
+ tokens = 2 * tokens # "self: self"
+ if len(tokens) != 2:
+ # This should never happen again (but who knows?)
+ raise SystemError(f'Invalid argument "{arg}" in "{line}".')
name, ann = tokens
if name in keyword.kwlist:
if LIST_KEYWORDS: