Android: Fix recursion bug in callStaticMethod()

calling callStaticMethod() with template type jlong, jdouble or
jboolean would cause the call to loop indefinitely.

Change-Id: I99caa576e761fdef623ece04e0779e4cf2535592
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
This commit is contained in:
Christian Strømme 2014-08-05 19:28:21 +02:00 committed by Christian Stromme
parent 2ad9e69a9f
commit 682976def7

View File

@ -721,7 +721,7 @@ jboolean QJNIObjectPrivate::callStaticMethod<jboolean>(jclass clazz,
{
va_list args;
va_start(args, sig);
jboolean res = callStaticMethod<jboolean>(clazz, methodName, sig);
jboolean res = callStaticMethod<jboolean>(clazz, methodName, sig, args);
va_end(args);
return res;
}
@ -1026,7 +1026,7 @@ jlong QJNIObjectPrivate::callStaticMethod<jlong>(jclass clazz,
{
va_list args;
va_start(args, sig);
jlong res = callStaticMethod<jlong>(clazz, methodName, sig);
jlong res = callStaticMethod<jlong>(clazz, methodName, sig, args);
va_end(args);
return res;
}
@ -1119,7 +1119,7 @@ jdouble QJNIObjectPrivate::callStaticMethod<jdouble>(const char *className,
{
va_list args;
va_start(args, sig);
jdouble res = callStaticMethod<jdouble>(className, methodName, sig);
jdouble res = callStaticMethod<jdouble>(className, methodName, sig, args);
va_end(args);
return res;
}