Skip to content
Snippets Groups Projects
Commit a9b2be8a authored by Tom Ouyang's avatar Tom Ouyang
Browse files

Change expandable binary dict write to a temp file first.

Bug: 6380724
Change-Id: Ic1d0d902dc45ecb41a1792f33a60ab85e606fcef
parent 7f45ec7b
No related branches found
No related tags found
No related merge requests found
...@@ -288,13 +288,16 @@ abstract public class ExpandableBinaryDictionary extends Dictionary { ...@@ -288,13 +288,16 @@ abstract public class ExpandableBinaryDictionary extends Dictionary {
loadDictionaryAsync(); loadDictionaryAsync();
final String tempFileName = mFilename + ".temp";
final File file = new File(mContext.getFilesDir(), mFilename); final File file = new File(mContext.getFilesDir(), mFilename);
final File tempFile = new File(mContext.getFilesDir(), tempFileName);
FileOutputStream out = null; FileOutputStream out = null;
try { try {
out = new FileOutputStream(file); out = new FileOutputStream(tempFile);
BinaryDictInputOutput.writeDictionaryBinary(out, mFusionDictionary, 1); BinaryDictInputOutput.writeDictionaryBinary(out, mFusionDictionary, 1);
out.flush(); out.flush();
out.close(); out.close();
tempFile.renameTo(file);
clearFusionDictionary(); clearFusionDictionary();
} catch (IOException e) { } catch (IOException e) {
Log.e(TAG, "IO exception while writing file: " + e); Log.e(TAG, "IO exception while writing file: " + e);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment