Workaround for javac compilation issue of lambda code

Since ag/32554459 some Robolectric tests are compiling
framework code with javac. For reasons unclear so far this
code fails to compile with javac:

> ShortcutService.java:408: error: variable ri might not have been initialized

https://android-build.googleplex.com/builds/submitted/3416256/angelfish-userdebug/latest/logs

Removing the lambda expressions corrects the issue.

BUG: 32554459

Change-Id: I189c8ef02dc93b46ef6418c1ff14f2312097898a
This commit is contained in:
Mark Renouf
2016-11-01 11:48:24 -04:00
parent c0ff60f272
commit e065f7c5a9

View File

@@ -238,10 +238,19 @@ public class ShortcutService extends IShortcutService.Stub {
private static List<ResolveInfo> EMPTY_RESOLVE_INFO = new ArrayList<>(0);
private static Predicate<ResolveInfo> ACTIVITY_NOT_EXPORTED =
ri -> !ri.activityInfo.exported;
// Temporarily reverted to anonymous inner class form due to: b/32554459
private static Predicate<ResolveInfo> ACTIVITY_NOT_EXPORTED = new Predicate<ResolveInfo>() {
public boolean test(ResolveInfo ri) {
return !ri.activityInfo.exported;
}
};
private static Predicate<PackageInfo> PACKAGE_NOT_INSTALLED = pi -> !isInstalled(pi);
// Temporarily reverted to anonymous inner class form due to: b/32554459
private static Predicate<PackageInfo> PACKAGE_NOT_INSTALLED = new Predicate<PackageInfo>() {
public boolean test(PackageInfo pi) {
return !isInstalled(pi);
}
};
private final Handler mHandler;