diff options
Diffstat (limited to 'src/org/linaro/connect/LRUCache.java')
-rw-r--r-- | src/org/linaro/connect/LRUCache.java | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/org/linaro/connect/LRUCache.java b/src/org/linaro/connect/LRUCache.java index 0623a7c..244ac6b 100644 --- a/src/org/linaro/connect/LRUCache.java +++ b/src/org/linaro/connect/LRUCache.java @@ -38,8 +38,16 @@ class LRUCache extends LinkedHashMap<String, File> { public InputStream getInputStream(String url) throws IOException { File f = get(url); - if( f != null ) - return new FileInputStream(f); + if( f != null ) { + try { + return new FileInputStream(f); + } + catch(IOException e) { + remove(url); + f.delete(); + throw e; + } + } File cacheFile = toCacheFile(url); return new CachingInputStream(url, cacheFile); |