Merge "PackageManager: Avoid creating encoders for appIds being written /config/sdcardfs"

This commit is contained in:
Narayan Kamath
2016-11-23 10:23:04 +00:00
committed by Android (Google) Code Review
2 changed files with 14 additions and 1 deletions

View File

@@ -316,6 +316,16 @@ public class FileUtils {
stringToFile(file.getAbsolutePath(), string);
}
/*
* Writes the bytes given in {@code content} to the file whose absolute path
* is {@code filename}.
*/
public static void bytesToFile(String filename, byte[] content) throws IOException {
try (FileOutputStream fos = new FileOutputStream(filename)) {
fos.write(content);
}
}
/**
* Writes string to file. Basically same as "echo -n $string > $filename"
*

View File

@@ -2470,7 +2470,10 @@ final class Settings {
final File file = new File(dir, "appid");
try {
FileUtils.stringToFile(file, Integer.toString(ps.appId));
// Note that the use of US_ASCII here is safe, we're only writing a decimal
// number to the file.
FileUtils.bytesToFile(file.getAbsolutePath(),
Integer.toString(ps.appId).getBytes(StandardCharsets.US_ASCII));
mKernelMapping.put(ps.name, ps.appId);
} catch (IOException ignored) {
}