aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2017-08-03 11:55:43 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2017-08-22 10:59:56 +0000
commit22f4d90c272b51d4dd9a24de6d4e8b1446fb8145 (patch)
treea88b26b407f5b160dc56137d8860bbda970bba58
parent52c58bfc2247449c81b06e4122022355d4d1dcde (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.cpp7
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()