JavaClassReader.st
changeset 52 1dc41619b6f8
parent 50 458467ce0e15
child 54 f37bcefb7091
--- a/JavaClassReader.st	Mon May 06 10:08:19 1996 +0000
+++ b/JavaClassReader.st	Mon May 06 14:21:57 1996 +0000
@@ -79,6 +79,12 @@
 
     |rslt clsName|
 
+    (aClassName endsWith:';') ifTrue:[
+        ('oops - loading of ' , aClassName , ' attempted') printNL.
+self halt.
+        ^ nil
+    ].
+
     clsName := aClassName.
     (clsName includes:$.) ifTrue:[
         clsName := clsName copy replaceAll:$. by:$/
@@ -332,6 +338,7 @@
     this_class setConstantPool:constants.
 
     JavaClass setInstanceVariableStringFromFields:fields in:this_class.
+    this_class setFields:fields.
 
     "/
     "/ get methods
@@ -537,6 +544,8 @@
         constSlot := constSlot + 1.
     ].
 
+    constSlot := -1.
+
     1 to:constantPoolCount-1 do:[:i |
         |const|
 
@@ -576,12 +585,17 @@
 !
 
 readConstant_Class
-    |name_index|
+    |name_index name|
 
     name_index := self nextU2.
 
     Verbose ifTrue:[Transcript show:'class; index= '; showCr:name_index].
 
+    name := constants at:name_index.
+    name notNil ifTrue:[
+        self halt
+    ].
+
     ^ JavaUnresolvedClassConstant 
         nameIndex:name_index
         pool:constants
@@ -1137,6 +1151,6 @@
 !JavaClassReader class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaClassReader.st,v 1.16 1996/05/06 10:06:15 cg Exp $'
+    ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaClassReader.st,v 1.17 1996/05/06 14:21:28 cg Exp $'
 ! !
 JavaClassReader initialize!