diff options
author | 2013-04-14 12:24:49 -0700 | |
---|---|---|
committer | 2013-04-17 01:26:52 -0700 | |
commit | cd831fa285bda39104ef825a7642f59776cf8fe9 (patch) | |
tree | af28f341baa7f8bc6c352b868adf7192ce18e554 /java/src | |
parent | 3970352ea907cbea63e342f370bb0bbb9cc7335a (diff) | |
download | latinime-cd831fa285bda39104ef825a7642f59776cf8fe9.tar.gz latinime-cd831fa285bda39104ef825a7642f59776cf8fe9.tar.xz latinime-cd831fa285bda39104ef825a7642f59776cf8fe9.zip |
Fix JsonWriter bug
JsonWriter requires that data be written to it, else close() will throw
an exception.
Change-Id: I596c5363e063cc75bcda55e0a506eefb3f17bd67
Diffstat (limited to 'java/src')
-rw-r--r-- | java/src/com/android/inputmethod/research/ResearchLog.java | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/java/src/com/android/inputmethod/research/ResearchLog.java b/java/src/com/android/inputmethod/research/ResearchLog.java index 35a491f2c..18bf7ba54 100644 --- a/java/src/com/android/inputmethod/research/ResearchLog.java +++ b/java/src/com/android/inputmethod/research/ResearchLog.java @@ -108,10 +108,14 @@ public class ResearchLog { @Override public Object call() throws Exception { try { - if (mHasWrittenData) { - mJsonWriter.endArray(); - mHasWrittenData = false; + // TODO: This is necessary to avoid an exception. Better would be to not even + // open the JsonWriter if the file is not even opened unless there is valid data + // to write. + if (!mHasWrittenData) { + mJsonWriter.beginArray(); } + mJsonWriter.endArray(); + mHasWrittenData = false; mJsonWriter.flush(); mJsonWriter.close(); if (DEBUG) { @@ -159,6 +163,12 @@ public class ResearchLog { public Object call() throws Exception { try { if (mHasWrittenData) { + // TODO: This is necessary to avoid an exception. Better would be to not + // even open the JsonWriter if the file is not even opened unless there is + // valid data to write. + if (!mHasWrittenData) { + mJsonWriter.beginArray(); + } mJsonWriter.endArray(); mJsonWriter.close(); mHasWrittenData = false; |