summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/android/androidjnimain.cpp
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@digia.com>2014-05-22 14:24:28 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-05-22 14:24:28 +0200
commit2064bf6155fda203fe798166e40be9247a20da85 (patch)
tree7b4166afcba07a471cd89bfbedc15e51edfeffdc /src/plugins/platforms/android/androidjnimain.cpp
parent0127962e4772d6c758b954b2fe1d4b676d366b4c (diff)
parent508b95899d4764d879a01b3990e44ce849cd9abc (diff)
Merge "Merge remote-tracking branch 'origin/stable' into dev" into refs/staging/dev
Diffstat (limited to 'src/plugins/platforms/android/androidjnimain.cpp')
-rw-r--r--src/plugins/platforms/android/androidjnimain.cpp20
1 files changed, 11 insertions, 9 deletions
diff --git a/src/plugins/platforms/android/androidjnimain.cpp b/src/plugins/platforms/android/androidjnimain.cpp
index 2998762cc3..7ca4db710b 100644
--- a/src/plugins/platforms/android/androidjnimain.cpp
+++ b/src/plugins/platforms/android/androidjnimain.cpp
@@ -463,17 +463,19 @@ static void *startMainMethod(void */*data*/)
static jboolean startQtApplication(JNIEnv *env, jobject /*object*/, jstring paramsString, jstring environmentString)
{
m_mainLibraryHnd = NULL;
- const char *nativeString = env->GetStringUTFChars(environmentString, 0);
- QByteArray string = nativeString;
- env->ReleaseStringUTFChars(environmentString, nativeString);
- m_applicationParams=string.split('\t');
- foreach (string, m_applicationParams) {
- if (!string.isEmpty() && putenv(string.constData()))
- qWarning() << "Can't set environment" << string;
+ { // Set env. vars
+ const char *nativeString = env->GetStringUTFChars(environmentString, 0);
+ const QList<QByteArray> envVars = QByteArray(nativeString).split('\t');
+ env->ReleaseStringUTFChars(environmentString, nativeString);
+ foreach (const QByteArray &envVar, envVars) {
+ const QList<QByteArray> envVarPair = envVar.split('=');
+ if (envVarPair.size() == 2 && ::setenv(envVarPair[0], envVarPair[1], 1) != 0)
+ qWarning() << "Can't set environment" << envVarPair;
+ }
}
- nativeString = env->GetStringUTFChars(paramsString, 0);
- string = nativeString;
+ const char *nativeString = env->GetStringUTFChars(paramsString, 0);
+ QByteArray string = nativeString;
env->ReleaseStringUTFChars(paramsString, nativeString);
m_applicationParams=string.split('\t');