diff options
author | nasko <nasko@chromium.org> | 2015-08-24 13:46:40 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-08-24 20:47:22 +0000 |
commit | 48100928ada82f247379600164bef90502b82a4e (patch) | |
tree | 0a1744b6b0b65546c359a978dd3e4cb7a05c9183 /sync/android | |
parent | 39eef83efd0a91e7222af80f886e142971da890c (diff) | |
download | chromium_src-48100928ada82f247379600164bef90502b82a4e.zip chromium_src-48100928ada82f247379600164bef90502b82a4e.tar.gz chromium_src-48100928ada82f247379600164bef90502b82a4e.tar.bz2 |
Revert of jni_generator: Make all object-returning natives return ScopedJavaLocalRef. (patchset #5 id:80001 of https://codereview.chromium.org/1288183004/ )
Reason for revert:
Broke Android GN build:
http://build.chromium.org/p/chromium.linux/builders/Android%20GN/builds/29644
FAILED: /b/build/goma/gomacc ../../third_party/android_tools/ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-g++ -MMD -MF obj/mojo/android/libmojo_java_unittests/validation_test_util.o.d -DUNIT_TEST -DV8_DEPRECATION_WARNINGS -DCLD_VERSION=1 -DENABLE_NOTIFICATIONS -DENABLE_BROWSER_CDMS -DENABLE_PRINTING=1 -DENABLE_BASIC_PRINTING=1 -DENABLE_SPELLCHECK=1 -DUSE_BROWSER_SPELLCHECKER=1 -DDONT_EMBED_BUILD_METADATA -DUSE_OPENSSL=1 -DUSE_OPENSSL_CERTS=1 -DNO_TCMALLOC -DDISABLE_NACL -DENABLE_CONFIGURATION_POLICY -DENABLE_SUPERVISED_USERS=1 -DENABLE_AUTOFILL_DIALOG=1 -DUSE_PROPRIETARY_CODECS -DV8_USE_EXTERNAL_STARTUP_DATA -DVIDEO_HOLE=1 -DMOBILE_SAFE_BROWSING -DSAFE_BROWSING_SERVICE -DCHROMIUM_BUILD -DENABLE_MEDIA_ROUTER=1 -DFIELDTRIAL_TESTING_ENABLED -D_FILE_OFFSET_BITS=64 -DANDROID -DHAVE_SYS_UIO_H -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_FORTIFY_SOURCE=2 -D__GNU_SOURCE=1 -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DMOJO_USE_SYSTEM_IMPL -DGTEST_HAS_POSIX_RE=0 -DGTEST_LANG_CXX11=0 -DGTEST_HAS_RTTI=0 -DGTEST_USE_OWN_TR1_TUPLE=1 -DGTEST_HAS_TR1_TUPLE=1 -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DU_STATIC_IMPLEMENTATION -I../.. -Igen -Igen/mojo/android/jni_headers -Igen/mojo/android/jni_headers/mojo -Igen/mojo/android/system_java_jni_headers -Igen/mojo/android/system_java_jni_headers/mojo -I../../testing/gtest/include -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -I../../third_party/mojo/src -Igen/third_party/mojo/src -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -march=armv7-a -mfloat-abi=softfp -mtune=generic-armv7-a -mthumb -mthumb-interwork -fno-tree-sra -fno-caller-saves -funwind-tables -fPIC -pipe -ffunction-sections -funwind-tables -fno-short-enums -finline-limit=64 -mfpu=vfpv3-d16 -Wall -Wsign-compare -Wendif-labels -Werror -Wno-missing-field-initializers -Wno-unused-parameter -Wno-psabi -Wno-extra -Wno-ignored-qualifiers -Wno-type-limits -Wno-unused-local-typedefs -isystem../../third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++/libcxx/include -isystem../../third_party/android_tools/ndk/sources/cxx-stl/llvm-libc++abi/libcxxabi/include -isystem../../third_party/android_tools/ndk/sources/android/support/include -fvisibility=hidden --sysroot=/b/build/slave/Android_GN/build/src/third_party/android_tools/ndk/platforms/android-16/arch-arm -Os -fno-ident -fdata-sections -ffunction-sections -fomit-frame-pointer -g2 -fno-threadsafe-statics -fvisibility-inlines-hidden -std=gnu++11 -Wno-narrowing -Wno-literal-suffix -Wno-error=c++0x-compat -Wno-non-virtual-dtor -Wno-sign-promo -fno-rtti -fno-exceptions -c ../../mojo/android/javatests/validation_test_util.cc -o obj/mojo/android/libmojo_java_unittests/validation_test_util.o
../../mojo/android/javatests/validation_test_util.cc: In function '_jobject* mojo::android::ParseData(JNIEnv*, jclass, jstring)':
../../mojo/android/javatests/validation_test_util.cc:21:70:error: ambiguating new declaration of '_jobject* mojo::android::ParseData(JNIEnv*, jclass, jstring)'
jobject ParseData(JNIEnv* env, jclass jcaller, jstring data_as_string) {
^
In file included from ../../mojo/android/javatests/validation_test_util.cc:11:0:
gen/mojo/android/jni_headers/mojo/jni/ValidationTestUtil_jni.h:34:36: note: old declaration 'base::android::ScopedJavaLocalRef<_jobject*> mojo::android::ParseData(JNIEnv*, jclass, jstring)'
static ScopedJavaLocalRef<jobject> ParseData(JNIEnv* env, jclass jcaller,
^
gen/mojo/android/jni_headers/mojo/jni/ValidationTestUtil_jni.h: At global scope:
gen/mojo/android/jni_headers/mojo/jni/ValidationTestUtil_jni.h:34:36:error: 'base::android::ScopedJavaLocalRef<_jobject*> mojo::android::ParseData(JNIEnv*, jclass, jstring)' declared 'static' but never defined [-Werror=unused-function]
cc1plus: all warnings being treated as errors
ninja: build stopped: subcommand failed.
Original issue's description:
> jni_generator: Make all object-returning natives return ScopedJavaLocalRef.
>
> Instead of only expecting C++ methods to return ScopedJavaLocalRefs for
> object return values, apply this to all native functions. This further
> reduces the difference between methods and nonmethods. The vast majority
> of native nonmethod functions already have a ScopedJavaLocalRef and
> currently write "return foo.Release()" to return it, so this is a fairly
> small change in actual behaviour; only a few functions need to create
> one.
>
> Also, remove the namespace qualifiers from the existing generated
> references to ScopedJavaLocalRef, since jni_generator_helper.h already
> includes a "using" declaration for it.
>
> BUG=379897
>
> Committed: https://crrev.com/be33e691030b6de0351d9a7eeaaca218685dd5bb
> Cr-Commit-Position: refs/heads/master@{#345147}
TBR=aurimas@chromium.org,jshin@chromium.org,jwd@chromium.org,mlerman@chromium.org,mmenke@chromium.org,nyquist@chromium.org,rmcilroy@chromium.org,sievers@chromium.org,sky@chromium.org,solb@chromium.org,yfriedman@google.com,lambroslambrou@chromium.org,yfriedman@chromium.org,torne@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=379897
Review URL: https://codereview.chromium.org/1308363003
Cr-Commit-Position: refs/heads/master@{#345171}
Diffstat (limited to 'sync/android')
-rw-r--r-- | sync/android/model_type_helper.cc | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/sync/android/model_type_helper.cc b/sync/android/model_type_helper.cc index 37650cb..6d30eaa 100644 --- a/sync/android/model_type_helper.cc +++ b/sync/android/model_type_helper.cc @@ -11,14 +11,16 @@ namespace syncer { -static ScopedJavaLocalRef<jstring> -ModelTypeToNotificationType(JNIEnv* env, jclass clazz, jint model_type_int) { +static jstring ModelTypeToNotificationType(JNIEnv* env, + jclass clazz, + jint model_type_int) { std::string model_type_string; ModelType model_type = static_cast<ModelType>(model_type_int); if (!RealModelTypeToNotificationType(model_type, &model_type_string)) { NOTREACHED() << "No string representation of model type " << model_type; } - return base::android::ConvertUTF8ToJavaString(env, model_type_string); + return base::android::ConvertUTF8ToJavaString(env, model_type_string) + .Release(); } bool RegisterModelTypeHelperJni(JNIEnv* env) { |