summaryrefslogtreecommitdiffstats
path: root/WebKit
diff options
context:
space:
mode:
authorPatrick Scott <phanna@android.com>2010-11-15 14:20:19 -0500
committerPatrick Scott <phanna@android.com>2010-11-15 14:20:19 -0500
commitc171aa015a0cbeab69fa359835f7c82f269d6111 (patch)
tree9675437d20d0a7336bb9db45be12649d9f3af818 /WebKit
parentf453e13fab0dd2583b793466fe3bf075ca279c17 (diff)
downloadexternal_webkit-c171aa015a0cbeab69fa359835f7c82f269d6111.zip
external_webkit-c171aa015a0cbeab69fa359835f7c82f269d6111.tar.gz
external_webkit-c171aa015a0cbeab69fa359835f7c82f269d6111.tar.bz2
Fix a crash due to null java strings.
Change-Id: I29a229da168181ba3d5bc5fb84365f275eb42869
Diffstat (limited to 'WebKit')
-rw-r--r--WebKit/android/WebCoreSupport/UrlInterceptResponse.cpp14
1 files changed, 10 insertions, 4 deletions
diff --git a/WebKit/android/WebCoreSupport/UrlInterceptResponse.cpp b/WebKit/android/WebCoreSupport/UrlInterceptResponse.cpp
index ab00ba6..1126609 100644
--- a/WebKit/android/WebCoreSupport/UrlInterceptResponse.cpp
+++ b/WebKit/android/WebCoreSupport/UrlInterceptResponse.cpp
@@ -101,10 +101,16 @@ UrlInterceptResponse::UrlInterceptResponse(JNIEnv* env, jobject response) {
jstring mimeStr = (jstring) env->GetObjectField(response, mimeType);
jstring encodingStr = (jstring) env->GetObjectField(response, encoding);
- m_mimeType.assign(env->GetStringUTFChars(mimeStr, NULL),
- env->GetStringUTFLength(mimeStr));
- m_encoding.assign(env->GetStringUTFChars(encodingStr, NULL),
- env->GetStringUTFLength(encodingStr));
+ if (mimeStr) {
+ m_mimeType.assign(env->GetStringUTFChars(mimeStr, NULL),
+ env->GetStringUTFLength(mimeStr));
+ env->ReleaseStringUTFChars(mimeStr, NULL);
+ }
+ if (encodingStr) {
+ m_encoding.assign(env->GetStringUTFChars(encodingStr, NULL),
+ env->GetStringUTFLength(encodingStr));
+ env->ReleaseStringUTFChars(encodingStr, NULL);
+ }
env->DeleteLocalRef(javaResponse);
env->DeleteLocalRef(mimeStr);