[armedbear-cvs] r14453 - trunk/abcl/src/org/armedbear/lisp

ehuelsmann at common-lisp.net ehuelsmann at common-lisp.net
Fri Mar 29 23:01:38 UTC 2013


Author: ehuelsmann
Date: Fri Mar 29 16:01:36 2013
New Revision: 14453

Log:
Fix recent TINAA-TEST loader crash (regression from FAILure)
  as detected by cl-test-grid.

Note, the failure is caused by the move of the threading primitives to
  the THREADS package to which KMRCL hasn't been adapted yet. This
  commit restores back to the FAIL state.

Modified:
   trunk/abcl/src/org/armedbear/lisp/Package.java

Modified: trunk/abcl/src/org/armedbear/lisp/Package.java
==============================================================================
--- trunk/abcl/src/org/armedbear/lisp/Package.java	Fri Mar 29 14:19:19 2013	(r14452)
+++ trunk/abcl/src/org/armedbear/lisp/Package.java	Fri Mar 29 16:01:36 2013	(r14453)
@@ -468,13 +468,18 @@
             }
         }
         // Reaching here, it's OK to remove the symbol.
-        if (internalSymbols.get(symbol.name.toString()) == symbol)
-            internalSymbols.remove(symbol.name.toString());
-        else if (externalSymbols.get(symbol.name.toString()) == symbol)
+        boolean found = false;
+        if (externalSymbols.get(symbol.name.toString()) == symbol) {
             externalSymbols.remove(symbol.name.toString());
-        else
-            // Not found.
+            found = true;
+        }
+        if (internalSymbols.get(symbol.name.toString()) == symbol) {
+            internalSymbols.remove(symbol.name.toString());
+            found = true;
+        }
+        if (! found)
             return NIL;
+
         if (shadow) {
             Debug.assertTrue(shadowingSymbols != null);
             shadowingSymbols.remove(symbolName);




More information about the armedbear-cvs mailing list