OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "base/android/jni_string.h" | 5 #include "base/android/jni_string.h" |
6 | 6 |
7 #include "base/android/jni_android.h" | 7 #include "base/android/jni_android.h" |
8 #include "base/logging.h" | 8 #include "base/logging.h" |
9 #include "base/utf_string_conversions.h" | 9 #include "base/utf_string_conversions.h" |
10 | 10 |
11 namespace { | 11 namespace { |
12 | 12 |
13 // Internal version that does not use a scoped local pointer. | 13 // Internal version that does not use a scoped local pointer. |
14 jstring ConvertUTF16ToJavaStringImpl(JNIEnv* env, const string16& str) { | 14 jstring ConvertUTF16ToJavaStringImpl(JNIEnv* env, |
15 const base::StringPiece16& str) { | |
15 jstring result = env->NewString(str.data(), str.length()); | 16 jstring result = env->NewString(str.data(), str.length()); |
16 base::android::CheckException(env); | 17 base::android::CheckException(env); |
17 return result; | 18 return result; |
18 } | 19 } |
19 | 20 |
20 } | 21 } |
21 | 22 |
22 namespace base { | 23 namespace base { |
23 namespace android { | 24 namespace android { |
24 | 25 |
(...skipping 28 matching lines...) Expand all Loading... | |
53 string16 result(chars, env->GetStringLength(str)); | 54 string16 result(chars, env->GetStringLength(str)); |
54 env->ReleaseStringChars(str, chars); | 55 env->ReleaseStringChars(str, chars); |
55 CheckException(env); | 56 CheckException(env); |
56 return result; | 57 return result; |
57 } | 58 } |
58 | 59 |
59 string16 ConvertJavaStringToUTF16(const JavaRef<jstring>& str) { | 60 string16 ConvertJavaStringToUTF16(const JavaRef<jstring>& str) { |
60 return ConvertJavaStringToUTF16(AttachCurrentThread(), str.obj()); | 61 return ConvertJavaStringToUTF16(AttachCurrentThread(), str.obj()); |
61 } | 62 } |
62 | 63 |
63 // TODO(joth): change this to accept const StringPiece16&. | |
64 ScopedJavaLocalRef<jstring> ConvertUTF16ToJavaString(JNIEnv* env, | 64 ScopedJavaLocalRef<jstring> ConvertUTF16ToJavaString(JNIEnv* env, |
65 const string16& str) { | 65 const base::StringPiece16& str) { |
joth
2012/06/11 23:39:38
likewise as this fit when aligned with the open pa
Wei James(wistoch)
2012/06/12 01:25:29
fixed. thanks
| |
66 return ScopedJavaLocalRef<jstring>(env, | 66 return ScopedJavaLocalRef<jstring>(env, |
67 ConvertUTF16ToJavaStringImpl(env, str)); | 67 ConvertUTF16ToJavaStringImpl(env, str)); |
68 } | 68 } |
69 | 69 |
70 } // namespace android | 70 } // namespace android |
71 } // namespace base | 71 } // namespace base |
OLD | NEW |