diff -r d1f4401ae467 -r 62f2cd2978d5 ShellView.st --- a/ShellView.st Thu Apr 16 16:11:31 1998 +0200 +++ b/ShellView.st Sat Apr 18 16:53:48 1998 +0200 @@ -138,7 +138,15 @@ directory: aDirectory - directory := aDirectory asFilename asAbsoluteFilename name + |dir| + (directory ~= (dir := aDirectory asFilename asAbsoluteFilename name)) + ifTrue: + [ + directory := dir. + self listOfShellOutput + at: self listOfShellOutput size + put: self getDirectoryTextString + ] ! numberOfMaxLines @@ -288,23 +296,23 @@ |stream streamAtLine possibleFileName selectedFileName fileFound| possibleFileName := ''. - stream := (self listOfShellOutput at: anLineIndex) readStream. + stream := (self listOfShellOutput at: anLineIndex) string readStream. fileFound := false. [stream atEnd | fileFound] whileFalse: - [ + [ possibleFileName := possibleFileName, stream next. (("((selectedFileName := possibleFileName) asFilename exists) or:" (selectedFileName := directory, Filename separator, possibleFileName) asFilename exists) and: [selectedFileName asFilename isDirectory not]) ifTrue: [ - |possibleLineIndex listSize lineNumber| + |possibleLineIndex listSize lineNumber| fileFound := true. self openFile: selectedFileName. [stream atEnd | lineNumber notNil] whileFalse: - [ + [ lineNumber := Integer readFrom: stream nextAlphaNumericWord onError: nil. ]. lineNumber := lineNumber ? 1.