Add null check when list directory
This change protect getPlatformFileListForPrefix from crashing when the directory exist but cannot be listed. This generally happens when the caller doesn't have enough permission to list. Test: atest CtsNetTestCases:android.net.cts.NetworkStatsManagerTest#testDataMigrationUtils Ignore-AOSP-First: in a topic with internal-only changes Bug: 230289468 Change-Id: I4177a8229cc9db18d76cb90c54a1b8d12ef8d98f Merged-In: I4177a8229cc9db18d76cb90c54a1b8d12ef8d98f (pure cherry-picked from ag/18457684)
This commit is contained in:
@@ -52,6 +52,7 @@ import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.net.ProtocolException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
@@ -163,7 +164,10 @@ public class NetworkStatsDataMigrationUtils {
|
||||
final ArrayList<File> list = new ArrayList<>();
|
||||
final File platformFiles = getPlatformBaseDir();
|
||||
if (platformFiles.exists()) {
|
||||
for (String name : platformFiles.list()) {
|
||||
final String[] files = platformFiles.list();
|
||||
if (files == null) return list;
|
||||
Arrays.sort(files);
|
||||
for (String name : files) {
|
||||
// Skip when prefix doesn't match.
|
||||
if (!name.startsWith(prefix + ".")) continue;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user