summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author The Android Open Source Project <initial-contribution@android.com> 2010-06-04 11:07:49 -0700
committer The Android Open Source Project <initial-contribution@android.com> 2010-06-04 11:08:36 -0700
commit2d743fe2f39397d41334001d897eb78da56e94ef (patch)
tree329c927aa7b709608d488d4271a95aa32df062a1
parente896d41699ffe7be932102d7ccc9566f41ddb447 (diff)
parentfb59fbf14e3d8580ad8702343795f03b2f823295 (diff)
merge from open-source master
Change-Id: Ic9060d92c014d6cbe9d90ce8deca8fa111711471
-rw-r--r--core/java/android/webkit/WebView.java40
1 files changed, 25 insertions, 15 deletions
diff --git a/core/java/android/webkit/WebView.java b/core/java/android/webkit/WebView.java
index 921d0f559118..ac23832900cc 100644
--- a/core/java/android/webkit/WebView.java
+++ b/core/java/android/webkit/WebView.java
@@ -1380,16 +1380,23 @@ public class WebView extends AbsoluteLayout
final File temp = new File(dest.getPath() + ".writing");
new Thread(new Runnable() {
public void run() {
+ FileOutputStream out = null;
try {
- FileOutputStream out = new FileOutputStream(temp);
+ out = new FileOutputStream(temp);
p.writeToStream(out);
- out.close();
// Writing the picture succeeded, rename the temporary file
// to the destination.
temp.renameTo(dest);
} catch (Exception e) {
// too late to do anything about it.
} finally {
+ if (out != null) {
+ try {
+ out.close();
+ } catch (Exception e) {
+ // Can't do anything about that
+ }
+ }
temp.delete();
}
}
@@ -1442,20 +1449,23 @@ public class WebView extends AbsoluteLayout
final Bundle copy = new Bundle(b);
new Thread(new Runnable() {
public void run() {
- final Picture p = Picture.createFromStream(in);
- if (p != null) {
- // Post a runnable on the main thread to update the
- // history picture fields.
- mPrivateHandler.post(new Runnable() {
- public void run() {
- restoreHistoryPictureFields(p, copy);
- }
- });
- }
try {
- in.close();
- } catch (Exception e) {
- // Nothing we can do now.
+ final Picture p = Picture.createFromStream(in);
+ if (p != null) {
+ // Post a runnable on the main thread to update the
+ // history picture fields.
+ mPrivateHandler.post(new Runnable() {
+ public void run() {
+ restoreHistoryPictureFields(p, copy);
+ }
+ });
+ }
+ } finally {
+ try {
+ in.close();
+ } catch (Exception e) {
+ // Nothing we can do now.
+ }
}
}
}).start();