Index: base/android/jni_generator/jni_generator.py |
diff --git a/base/android/jni_generator/jni_generator.py b/base/android/jni_generator/jni_generator.py |
index 0cb70bc836b379f4bf333c4219e78ef0a858f95f..de0c152c7a21961267b449737f9b278da5d373cb 100755 |
--- a/base/android/jni_generator/jni_generator.py |
+++ b/base/android/jni_generator/jni_generator.py |
@@ -740,7 +740,7 @@ $CONSTANT_FIELDS |
// Step 2: method stubs. |
$METHOD_STUBS |
-// Step 3: RegisterNatives. |
+$STEP3_COMMENT |
Torne
2016/08/02 12:31:40
I'd really just leave the comment there; it's an a
no sievers
2016/08/02 23:12:17
Done.
|
$JNI_NATIVE_METHODS |
$REGISTER_NATIVES |
$CLOSE_NAMESPACE |
@@ -754,12 +754,17 @@ $CLOSE_NAMESPACE |
'CONSTANT_FIELDS': self.GetConstantFieldsString(), |
'METHOD_STUBS': self.GetMethodStubsString(), |
'OPEN_NAMESPACE': self.GetOpenNamespaceString(), |
+ 'STEP3_COMMENT': '', |
'JNI_NATIVE_METHODS': self.GetJNINativeMethodsString(), |
'REGISTER_NATIVES': self.GetRegisterNativesString(), |
'CLOSE_NAMESPACE': self.GetCloseNamespaceString(), |
'HEADER_GUARD': self.header_guard, |
'INCLUDES': self.GetIncludesString(), |
} |
+ assert (values['JNI_NATIVE_METHODS'] == '') == |
+ (values['REGISTER_NATIVES'] == '') |
+ if values['JNI_NATIVE_METHODS'] != '': |
+ values['STEP3_COMMENT'] = '// Step 3: RegisterNatives.' |
return WrapOutput(template.substitute(values)) |
def GetClassPathDefinitionsString(self): |
@@ -829,6 +834,10 @@ ${KMETHODS} |
def GetRegisterNativesString(self): |
"""Returns the code for RegisterNatives.""" |
+ natives = self.GetRegisterNativesImplString() |
+ if not natives: |
+ return '' |
+ |
template = Template("""\ |
${REGISTER_NATIVES_SIGNATURE} { |
${EARLY_EXIT} |
@@ -843,19 +852,12 @@ ${NATIVES} |
if (base::android::IsManualJniRegistrationDisabled()) return true; |
""" |
- natives = self.GetRegisterNativesImplString() |
values = {'REGISTER_NATIVES_SIGNATURE': signature, |
'EARLY_EXIT': early_exit, |
'NATIVES': natives, |
} |
- func_declaration = '' |
- if not natives: |
- func_declaration = Template("""\ |
-${REGISTER_NATIVES_SIGNATURE} __attribute__((unused)); |
-""").substitute(values) |
- |
- return func_declaration + template.substitute(values) |
+ return template.substitute(values) |
def GetRegisterNativesImplString(self): |
"""Returns the shared implementation for RegisterNatives.""" |