dont call #version if the method has been unloaded
authorClaus Gittinger <cg@exept.de>
Mon, 18 Mar 1996 15:41:01 +0100
changeset 1102 6ed4f93420c6
parent 1101 4a729e413e9e
child 1103 614ebfdc0c9d
dont call #version if the method has been unloaded
Class.st
--- a/Class.st	Mon Mar 18 12:29:21 1996 +0100
+++ b/Class.st	Mon Mar 18 15:41:01 1996 +0100
@@ -3396,23 +3396,25 @@
     thisContext isRecursive ifTrue:[^ nil ].
 
     self isMeta ifTrue:[
-	meta := self. cls := self soleInstance
+        meta := self. cls := self soleInstance
     ] ifFalse:[
-	cls := self. meta := self class
+        cls := self. meta := self class
     ].
 
     m := meta compiledMethodAt:#version.
     m isNil ifTrue:[
-	m := cls compiledMethodAt:#version.
-	m isNil ifTrue:[^ nil].
+        m := cls compiledMethodAt:#version.
+        m isNil ifTrue:[^ nil].
     ].
 
-    "/
-    "/ if its a method returning the string,
-    "/ thats the returned value
-    "/
-    val := cls version.
-    val isString ifTrue:[^ val].
+    m isExecutable ifTrue:[
+        "/
+        "/ if its a method returning the string,
+        "/ thats the returned value
+        "/
+        val := cls version.
+        val isString ifTrue:[^ val].
+    ].
 
     "/
     "/ if its a method consisting of a comment only
@@ -3427,7 +3429,7 @@
 
     "
      Smalltalk allClassesDo:[:cls |
-	Transcript showCr:cls revisionString
+        Transcript showCr:cls revisionString
      ].
 
      Number revisionString  
@@ -3435,7 +3437,7 @@
     "
 
     "Created: 29.10.1995 / 19:28:03 / cg"
-    "Modified: 16.12.1995 / 13:21:00 / cg"
+    "Modified: 18.3.1996 / 15:39:36 / cg"
 !
 
 revisionStringFromSource:aMethodSourceString
@@ -3894,6 +3896,6 @@
 !Class class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/Class.st,v 1.144 1996-03-04 15:50:39 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/Class.st,v 1.145 1996-03-18 14:41:01 cg Exp $'
 ! !
 Class initialize!