diff options
author | 2021-08-13 15:01:06 -0700 | |
---|---|---|
committer | 2021-08-23 11:01:36 -0700 | |
commit | ddea459a65fa27cfd5715680729746b54bfb1159 (patch) | |
tree | 63e408bbf98f62416d49835d69061a531f0193ea | |
parent | 4f2415e1e71defe04debe788c9770e22256da16e (diff) |
[lint] treat non-user getter calls as lint errors with baselines to exempt existing failures
BUG: 195968932
Test: manual with commands like:
m out/soong/.intermediates/frameworks/base/services/backup/services.backup/android_common/lint/lint-report.html
Change-Id: Ifdac375967694bda4ca5949fa3f9ba31dc3b85d8
5 files changed, 62 insertions, 16 deletions
diff --git a/services/backup/lint-baseline.xml b/services/backup/lint-baseline.xml new file mode 100644 index 000000000000..28bb937cfd9c --- /dev/null +++ b/services/backup/lint-baseline.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<issues format="6" by="lint 7.1.0-dev" type="baseline" client="" dependencies="true" name="" variant="all" version="7.1.0-dev"> + + <issue + id="NonUserGetterCalled" + message="`android.provider.Settings.Secure#getInt()` called from system process. Please call `android.provider.Settings.Secure#getIntForUser()` instead. " + errorLine1=" return Settings.Secure.getInt(mContext.getContentResolver(), SKIP_USER_FACING_PACKAGES," + errorLine2=" ~~~~~~"> + <location + file="frameworks/base/services/backup/java/com/android/server/backup/UserBackupManagerService.java" + line="3702" + column="16"/> + </issue> + +</issues> diff --git a/services/companion/lint-baseline.xml b/services/companion/lint-baseline.xml new file mode 100644 index 000000000000..03eae3901e51 --- /dev/null +++ b/services/companion/lint-baseline.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<issues format="6" by="lint 7.1.0-dev" type="baseline" client="" dependencies="true" name="" variant="all" version="7.1.0-dev"> + + <issue + id="NonUserGetterCalled" + message="`android.provider.Settings.Secure#getString()` called from system process. Please call `android.provider.Settings.Secure#getStringForUser()` instead. " + errorLine1=" String setting = Settings.Secure.getString(getContext().getContentResolver()," + errorLine2=" ~~~~~~~~~"> + <location + file="frameworks/base/services/companion/java/com/android/server/companion/CompanionDeviceManagerService.java" + line="590" + column="14"/> + </issue> + +</issues> diff --git a/services/usb/lint-baseline.xml b/services/usb/lint-baseline.xml new file mode 100644 index 000000000000..c2c0a350d5ad --- /dev/null +++ b/services/usb/lint-baseline.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<issues format="6" by="lint 7.1.0-dev" type="baseline" client="" dependencies="true" name="" variant="all" version="7.1.0-dev"> + + <issue + id="NonUserGetterCalled" + message="`android.provider.Settings.Secure#getInt()` called from system process. Please call `android.provider.Settings.Secure#getIntForUser()` instead. " + errorLine1=" int isDisabled = Settings.Secure.getInt(mContext.getContentResolver()," + errorLine2=" ~~~~~~"> + <location + file="frameworks/base/services/usb/java/com/android/server/usb/UsbAlsaManager.java" + line="150" + column="42"/> + </issue> + +</issues> diff --git a/tools/lint/checks/src/main/java/com/google/android/lint/CallingSettingsNonUserGetterMethodsDetector.kt b/tools/lint/checks/src/main/java/com/google/android/lint/CallingSettingsNonUserGetterMethodsDetector.kt index 641f337ab987..fe567da7c017 100644 --- a/tools/lint/checks/src/main/java/com/google/android/lint/CallingSettingsNonUserGetterMethodsDetector.kt +++ b/tools/lint/checks/src/main/java/com/google/android/lint/CallingSettingsNonUserGetterMethodsDetector.kt @@ -45,7 +45,8 @@ class CallingSettingsNonUserGetterMethodsDetector : Detector(), SourceCodeScanne evaluator.isMemberInClass(method, "android.provider.Settings.System") ) { val message = getIncidentMessageNonUserGetterMethods(getMethodSignature(method)) - context.report(ISSUE_NON_USER_GETTER_CALLED, node, context.getLocation(node), message) + context.report(ISSUE_NON_USER_GETTER_CALLED, node, context.getNameLocation(node), + message) } } @@ -68,7 +69,7 @@ class CallingSettingsNonUserGetterMethodsDetector : Detector(), SourceCodeScanne """, category = Category.CORRECTNESS, priority = 6, - severity = Severity.WARNING, + severity = Severity.ERROR, implementation = Implementation( CallingSettingsNonUserGetterMethodsDetector::class.java, Scope.JAVA_FILE_SCOPE diff --git a/tools/lint/checks/src/test/java/com/google/android/lint/CallingSettingsNonUserGetterMethodsIssueDetectorTest.kt b/tools/lint/checks/src/test/java/com/google/android/lint/CallingSettingsNonUserGetterMethodsIssueDetectorTest.kt index 1034029f6e9d..e72f38416310 100644 --- a/tools/lint/checks/src/test/java/com/google/android/lint/CallingSettingsNonUserGetterMethodsIssueDetectorTest.kt +++ b/tools/lint/checks/src/test/java/com/google/android/lint/CallingSettingsNonUserGetterMethodsIssueDetectorTest.kt @@ -71,13 +71,13 @@ class CallingSettingsNonUserGetterMethodsIssueDetectorTest : LintDetectorTest() .run() .expect( """ - src/test/pkg/TestClass1.java:5: Warning: \ + src/test/pkg/TestClass1.java:5: Error: \ android.provider.Settings.Secure#getInt() called from system process. \ Please call android.provider.Settings.Secure#getIntForUser() instead. \ [NonUserGetterCalled] final int value = Secure.getInt(context.getContentResolver(), - ^ - 0 errors, 1 warnings + ~~~~~~ + 1 errors, 0 warnings """.addLineContinuation() ) } @@ -100,13 +100,13 @@ class CallingSettingsNonUserGetterMethodsIssueDetectorTest : LintDetectorTest() .run() .expect( """ - src/test/pkg/TestClass1.java:5: Warning: \ + src/test/pkg/TestClass1.java:5: Error: \ android.provider.Settings.System#getFloat() called from system process. \ Please call android.provider.Settings.System#getFloatForUser() instead. \ [NonUserGetterCalled] final float value = System.getFloat(context.getContentResolver(), - ^ - 0 errors, 1 warnings + ~~~~~~~~ + 1 errors, 0 warnings """.addLineContinuation() ) } @@ -130,13 +130,13 @@ class CallingSettingsNonUserGetterMethodsIssueDetectorTest : LintDetectorTest() .run() .expect( """ - src/test/pkg/TestClass1.java:5: Warning: \ + src/test/pkg/TestClass1.java:5: Error: \ android.provider.Settings.System#getFloat() called from system process. \ Please call android.provider.Settings.System#getFloatForUser() instead. \ [NonUserGetterCalled] float value = Settings.System.getFloat(context.getContentResolver(), - ^ - 0 errors, 1 warnings + ~~~~~~~~ + 1 errors, 0 warnings """.addLineContinuation() ) } @@ -163,19 +163,19 @@ class CallingSettingsNonUserGetterMethodsIssueDetectorTest : LintDetectorTest() .run() .expect( """ - src/test/pkg/TestClass1.java:6: Warning: \ + src/test/pkg/TestClass1.java:6: Error: \ android.provider.Settings.Secure#getLong() called from system process. \ Please call android.provider.Settings.Secure#getLongForUser() instead. \ [NonUserGetterCalled] final long value1 = Secure.getLong(context.getContentResolver(), - ^ - src/test/pkg/TestClass1.java:8: Warning: \ + ~~~~~~~ + src/test/pkg/TestClass1.java:8: Error: \ android.provider.Settings.System#getString() called from system process. \ Please call android.provider.Settings.System#getStringForUser() instead. \ [NonUserGetterCalled] final String value2 = System.getString(context.getContentResolver(), - ^ - 0 errors, 2 warnings + ~~~~~~~~~ + 2 errors, 0 warnings """.addLineContinuation() ) } |