src/JavaClassRegistry.st
branchjk_new_structure
changeset 1058 1db06119bf3e
parent 1057 9031c415cacf
child 1059 22fe06c9e367
--- a/src/JavaClassRegistry.st	Fri Oct 28 18:58:45 2011 +0000
+++ b/src/JavaClassRegistry.st	Fri Oct 28 20:15:40 2011 +0000
@@ -139,7 +139,7 @@
 
     classes := classLoadersAndClasses at: classLoader ifAbsent: nil.
     classes isNil ifTrue:[
-        classLoadersAndClasses at: classLoader put: Dictionary new        
+        classes := classLoadersAndClasses at: classLoader put: Dictionary new        
     ].
     ^classes at: className ifAbsent: [
         | class |
@@ -345,9 +345,12 @@
     classLoadersAndClasses keysAndValuesDo:[:loader :classes|
 
         (classes includesKey: aJavaClass name) ifTrue:[
-            self breakPoint: #jv.
-            loader = aJavaClass classLoader ifTrue:[
-                self error:'Trying to register class twice!!'
+            loader == aJavaClass classLoader ifTrue:[
+                (classes at: aJavaClass name) ~~ aJavaClass ifTrue:[
+                    self error:'Trying to register class twice!!'
+                ].
+            ] ifFalse:[
+                self breakPoint: #jv.
             ]
         ]                        
     ].