UnixOperatingSystem.st
changeset 5157 cb24e77a876c
parent 5035 e80199cc4f50
child 5203 a1a9869b2d24
--- a/UnixOperatingSystem.st	Thu Dec 30 12:07:15 1999 +0100
+++ b/UnixOperatingSystem.st	Thu Dec 30 15:50:23 1999 +0100
@@ -17,15 +17,15 @@
 	category:'OS-Unix'
 !
 
-Object subclass:#FileStatusInfo
-	instanceVariableNames:'type mode uid gid size id accessed modified statusChanged path'
+Object subclass:#OSProcessStatus
+	instanceVariableNames:'pid status code core'
 	classVariableNames:''
 	poolDictionaries:''
 	privateIn:UnixOperatingSystem
 !
 
-Object subclass:#OSProcessStatus
-	instanceVariableNames:'pid status code core'
+Object subclass:#FileStatusInfo
+	instanceVariableNames:'type mode uid gid size id accessed modified statusChanged path'
 	classVariableNames:''
 	poolDictionaries:''
 	privateIn:UnixOperatingSystem
@@ -7054,7 +7054,10 @@
         '/opt/smalltalk'
     ) do:[:d |
         (d asFilename isDirectory) ifTrue:[
-            sysPath add:d
+            "/ try to guess a gnu-smalltalk; skip it
+            (d asFilename construct:'initialize.st') exists ifFalse:[
+                sysPath add:d
+            ]
         ]
     ].
     ^ sysPath
@@ -8452,130 +8455,6 @@
     ^ self primitiveFailed
 ! !
 
-!UnixOperatingSystem::FileStatusInfo class methodsFor:'instance creation'!
-
-type:t mode:m uid:u gid:g size:s id:i accessed:aT modified:mT statusChanged:sT path:lP
-    ^ self basicNew
-        type:t mode:m uid:u gid:g size:s id:i accessed:aT modified:mT statusChanged:sT path:lP 
-! !
-
-!UnixOperatingSystem::FileStatusInfo methodsFor:'accessing'!
-
-accessed
-    "return accessed"
-
-    ^ accessed!
-
-alternativeName
-    "return the files other name (DOS name on windows).
-     Nil if there is no other name"
-
-    ^ nil
-!
-
-fixedHeaderSize
-    "return the fixedHeaderSize (VMS only; nil everywhere else)"
-
-    ^ nil
-!
-
-gid
-    "return gid"
-
-    ^ gid!
-
-id
-    "return id"
-
-    ^ id!
-
-mode
-    "return mode"
-
-    ^ mode!
-
-modified
-    "return modified"
-
-    ^ modified!
-
-path
-    "for symbolic links only: return the path where the symbolic link points to"
-
-    ^ path
-
-!
-
-recordAttributes
-    "return the recordAttributes (VMS only; nil everywhere else)"
-
-    ^ nil
-!
-
-recordFormat
-    "return the recordFormat (VMS only; nil everywhere else)"
-
-    ^ nil
-!
-
-recordFormatNumeric
-    "return the recordFormat as numeric (VMS only; nil everywhere else)"
-
-    ^ nil
-!
-
-recordSize
-    "return the recordSize (VMS only; nil everywhere else)"
-
-    ^ nil
-!
-
-size
-    "return size"
-
-    ^ size!
-
-statusChanged
-    "return statusChanged"
-
-    ^ statusChanged!
-
-type
-    "return type"
-
-    ^ type!
-
-uid
-    "return uid"
-
-    ^ uid
-! !
-
-!UnixOperatingSystem::FileStatusInfo methodsFor:'backward compatibility'!
-
-at:key
-    "backward compatibility access: in previous releases, IdentityDictionaries
-     were used to hold my information. Allow access via key messages.
-     This method will vanish - use the proper access protocol."
-
-    ^ self perform:key
-! !
-
-!UnixOperatingSystem::FileStatusInfo methodsFor:'private accessing'!
-
-type:t mode:m uid:u gid:g size:s id:i accessed:aT modified:mT statusChanged:sT path:lP
-    type := t.
-    mode := m.
-    uid := u.
-    gid := g.
-    size := s.
-    id := i.
-    accessed := aT.
-    modified := mT.
-    statusChanged := sT.
-    path := lP.
-! !
-
 !UnixOperatingSystem::OSProcessStatus class methodsFor:'documentation'!
 
 documentation
@@ -8734,9 +8613,133 @@
     "Modified: 28.12.1995 / 14:13:41 / stefan"
 ! !
 
+!UnixOperatingSystem::FileStatusInfo class methodsFor:'instance creation'!
+
+type:t mode:m uid:u gid:g size:s id:i accessed:aT modified:mT statusChanged:sT path:lP
+    ^ self basicNew
+        type:t mode:m uid:u gid:g size:s id:i accessed:aT modified:mT statusChanged:sT path:lP 
+! !
+
+!UnixOperatingSystem::FileStatusInfo methodsFor:'accessing'!
+
+accessed
+    "return accessed"
+
+    ^ accessed!
+
+alternativeName
+    "return the files other name (DOS name on windows).
+     Nil if there is no other name"
+
+    ^ nil
+!
+
+fixedHeaderSize
+    "return the fixedHeaderSize (VMS only; nil everywhere else)"
+
+    ^ nil
+!
+
+gid
+    "return gid"
+
+    ^ gid!
+
+id
+    "return id"
+
+    ^ id!
+
+mode
+    "return mode"
+
+    ^ mode!
+
+modified
+    "return modified"
+
+    ^ modified!
+
+path
+    "for symbolic links only: return the path where the symbolic link points to"
+
+    ^ path
+
+!
+
+recordAttributes
+    "return the recordAttributes (VMS only; nil everywhere else)"
+
+    ^ nil
+!
+
+recordFormat
+    "return the recordFormat (VMS only; nil everywhere else)"
+
+    ^ nil
+!
+
+recordFormatNumeric
+    "return the recordFormat as numeric (VMS only; nil everywhere else)"
+
+    ^ nil
+!
+
+recordSize
+    "return the recordSize (VMS only; nil everywhere else)"
+
+    ^ nil
+!
+
+size
+    "return size"
+
+    ^ size!
+
+statusChanged
+    "return statusChanged"
+
+    ^ statusChanged!
+
+type
+    "return type"
+
+    ^ type!
+
+uid
+    "return uid"
+
+    ^ uid
+! !
+
+!UnixOperatingSystem::FileStatusInfo methodsFor:'backward compatibility'!
+
+at:key
+    "backward compatibility access: in previous releases, IdentityDictionaries
+     were used to hold my information. Allow access via key messages.
+     This method will vanish - use the proper access protocol."
+
+    ^ self perform:key
+! !
+
+!UnixOperatingSystem::FileStatusInfo methodsFor:'private accessing'!
+
+type:t mode:m uid:u gid:g size:s id:i accessed:aT modified:mT statusChanged:sT path:lP
+    type := t.
+    mode := m.
+    uid := u.
+    gid := g.
+    size := s.
+    id := i.
+    accessed := aT.
+    modified := mT.
+    statusChanged := sT.
+    path := lP.
+! !
+
 !UnixOperatingSystem class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/UnixOperatingSystem.st,v 1.77 1999-12-01 18:16:04 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/UnixOperatingSystem.st,v 1.78 1999-12-30 14:50:23 ca Exp $'
 ! !
 UnixOperatingSystem initialize!