From e890c2075478ac484fbce482d0ce26e9c51dd0f2 Mon Sep 17 00:00:00 2001
From: Philip Crotwell <crotwell@seis.sc.edu>
Date: Tue, 6 Mar 2012 11:57:40 -0500
Subject: [PATCH] catch exception on bad serialization, just remove from cache
 and return null to fail up to date checks

---
 .../btree/BTreePersistentIndexedCache.java         |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/subprojects/core/src/main/groovy/org/gradle/cache/internal/btree/BTreePersistentIndexedCache.java b/subprojects/core/src/main/groovy/org/gradle/cache/internal/btree/BTreePersistentIndexedCache.java
index a652eed..8a4d86e 100644
--- a/subprojects/core/src/main/groovy/org/gradle/cache/internal/btree/BTreePersistentIndexedCache.java
+++ b/subprojects/core/src/main/groovy/org/gradle/cache/internal/btree/BTreePersistentIndexedCache.java
@@ -119,6 +119,9 @@ public class BTreePersistentIndexedCache<K, V> implements PersistentIndexedCache
                     return block.getValue();
                 }
                 return null;
+            } catch (java.io.InvalidClassException e) {
+                remove(key);
+                return null;
             } catch (CorruptedCacheException e) {
                 rebuild();
                 return null;
-- 
1.7.5.4

