JavaClass.st
changeset 312 f753abec575a
parent 281 67c5b913b645
child 321 1fc4570fb914
--- a/JavaClass.st	Thu Feb 05 11:10:33 1998 +0000
+++ b/JavaClass.st	Thu Feb 05 11:12:19 1998 +0000
@@ -393,10 +393,10 @@
 open
     "start a thread for my main method"
 
-    Java executeMainOf:self
+    self startMain
 
     "Created: / 15.1.1998 / 17:18:30 / cg"
-    "Modified: / 15.1.1998 / 17:18:59 / cg"
+    "Modified: / 5.2.1998 / 00:36:58 / cg"
 ! !
 
 !JavaClass methodsFor:'compiler interface'!
@@ -448,6 +448,26 @@
     "Modified: 22.3.1997 / 14:18:50 / cg"
 ! !
 
+!JavaClass methodsFor:'executing programs'!
+
+startMain
+    "start a thread for my main() method"
+
+    Java executeMainOf:self
+
+    "Created: / 5.2.1998 / 00:36:06 / cg"
+    "Modified: / 5.2.1998 / 00:37:15 / cg"
+!
+
+startMainWithArgumentString:aCommandLineString
+    "start a thread for my main() method, passing a string with arguments"
+
+    Java executeMainOf:self withArgumentString:aCommandLineString
+
+    "Modified: / 5.2.1998 / 00:37:25 / cg"
+    "Created: / 5.2.1998 / 00:41:15 / cg"
+! !
+
 !JavaClass methodsFor:'fileOut'!
 
 basicFileOutDefinitionOn:aStream withNameSpace:nameSpaceBoolean
@@ -1386,27 +1406,31 @@
 
 updateClassRefsFrom:oldClass to:newClass
     self == oldClass ifTrue:[
-	self makeObsolete.
-	^ self
+        self makeObsolete.
+        ^ self
     ].
 
     constantPool updateClassRefsFrom:oldClass to:newClass.
     interfaces notNil ifTrue:[
-	interfaces := interfaces collect:[:anInterface |
-					    anInterface == oldClass ifTrue:[
-						newClass
-					    ] ifFalse:[
-						anInterface
-					    ]
-					 ]
+        interfaces := interfaces collect:[:anInterface |
+                                            anInterface == oldClass ifTrue:[
+                                                newClass isNil ifTrue:[
+                                                    nil "/ replace by an unresolvedInterface
+                                                ] ifFalse:[
+                                                    newClass
+                                                ]
+                                            ] ifFalse:[
+                                                anInterface
+                                            ]
+                                         ]
     ]
 
-    "Modified: 8.8.1997 / 12:19:14 / cg"
+    "Modified: / 4.2.1998 / 22:08:19 / cg"
 ! !
 
 !JavaClass class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaClass.st,v 1.70 1998/01/28 01:32:20 cg Exp $'
+    ^ '$Header: /home/jv/Projects/SmalltalkX/repositories/cvs/stx/libjava/JavaClass.st,v 1.71 1998/02/05 11:12:19 cg Exp $'
 ! !
 JavaClass initialize!