diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2017-08-03 11:55:43 +0200 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2017-08-22 10:59:56 +0000 |
commit | 22f4d90c272b51d4dd9a24de6d4e8b1446fb8145 (patch) | |
tree | a88b26b407f5b160dc56137d8860bbda970bba58 | |
parent | 52c58bfc2247449c81b06e4122022355d4d1dcde (diff) |
Shiboken2: Add an index check for the <array> modification
Amends change 1578d14d1693122d4bcacede0d77527d8e898629.
Task-number: PYSIDE-354
Task-number: PYSIDE-516
Change-Id: I50e5d0762f1b049a511c62f8aa8d08da4cb563d9
Reviewed-by: Christian Tismer <tismer@stackless.com>
-rw-r--r-- | sources/shiboken2/ApiExtractor/abstractmetabuilder.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/sources/shiboken2/ApiExtractor/abstractmetabuilder.cpp b/sources/shiboken2/ApiExtractor/abstractmetabuilder.cpp index 95d700110..5739643f2 100644 --- a/sources/shiboken2/ApiExtractor/abstractmetabuilder.cpp +++ b/sources/shiboken2/ApiExtractor/abstractmetabuilder.cpp @@ -2116,7 +2116,12 @@ bool AbstractMetaBuilderPrivate::setArrayArgumentType(AbstractMetaFunction *func const FunctionModelItem &functionItem, int i) { - + if (i < 0 || i >= func->arguments().size()) { + qCWarning(lcShiboken).noquote() + << msgCannotSetArrayUsage(func->minimalSignature(), i, + QLatin1String("Index out of range.")); + return false; + } AbstractMetaType *metaType = func->arguments().at(i)->type(); if (metaType->indirections() == 0) { qCWarning(lcShiboken).noquote() |