]> gitweb.fperrin.net Git - Dictionary.git/blobdiff - src/com/hughes/android/util/PersistentObjectCache.java
Optimize resolveClass a bit.
[Dictionary.git] / src / com / hughes / android / util / PersistentObjectCache.java
index c95f5037b232022e7ea7e0ea0ef49d8a6a91edbe..c27341171f4f6f09d166052719b8bf7bcfaa8061 100644 (file)
@@ -52,16 +52,16 @@ public class PersistentObjectCache {
             String name = desc.getName();
             // Note: try to avoid adding more classes.
             // LinkedHashMap is already more than enough for a DoS
-            if (!name.equals(ArrayList.class.getName()) &&
-                    !name.equals(HashMap.class.getName()) &&
-                    !name.equals(LinkedHashMap.class.getName()) &&
-                    !name.equals(String.class.getName()) &&
-                    !name.equals(DictionaryApplication.DictionaryConfig.class.getName()) &&
-                    !name.equals(DictionaryInfo.class.getName()) &&
-                    !name.equals(DictionaryInfo.IndexInfo.class.getName())) {
-                throw new InvalidClassException("Not allowed to deserialize class", name);
+            if (name.equals(String.class.getName()) ||
+                    name.equals(DictionaryInfo.IndexInfo.class.getName()) ||
+                    name.equals(ArrayList.class.getName()) ||
+                    name.equals(HashMap.class.getName()) ||
+                    name.equals(DictionaryInfo.class.getName()) ||
+                    name.equals(DictionaryApplication.DictionaryConfig.class.getName()) ||
+                    name.equals(LinkedHashMap.class.getName())) {
+                return super.resolveClass(desc);
             }
-            return super.resolveClass(desc);
+            throw new InvalidClassException("Not allowed to deserialize class", name);
         }
     }