[BUG] SqueakMap and (over)use of FileSystem

Diego Gomez Deck DiegoGomezDeck at ConsultAr.com
Wed Nov 5 11:36:54 UTC 2003


The current version doesn't support to use the same image in two
different environments.

Let me explain the situation.  I have my image in Windoze and, using
SqueakMap, the following method is evaluated:


downloadDirectoryName
   "Answer the name of my default download directory. 
   This can be a relative name. 
   Default to the current directory for compatibility with old 
   behavior "
   ^ Preferences
      parameterAt: #SMLoaderDownloadDirectoryName
      ifAbsentPut: [FileDirectory default fullName]


So (remember I'm on windoze) a string naming a windoze directory is
stored in the preference #SMLoaderDownloadDirectoryName.  For example: 
'E:\squeak\imagenes'

Now I switch to my Linex box and I try to use SqueakMap from there. The
following method is evaluated:

downloadDirectory
   "Answer my default download directory."
   ^ FileDirectory default directoryNamed: self downloadDirectoryName

Creating an INVALID directory like:

   UnixFileDirectory on '/home/dgd/.squeak/E:\squeak\imagenes'


I can go with a quick hack using #parameterAt:ifAbsent: in implementors
of #downloadDirectoryName instead of #parameterAt:ifAbsentPut: (note the
PUT) but it'll not solve the case when someone choose one directory.

Any ideas?

OT: Why SM depends so much on the file system? Why we don't use the
image? IIRC more than the 50% of the bugs in SM are related in
directory/file system handling. LET'S FORGET THE FILE SYSTEM PLEASE!

-- 
Diego Gomez Deck
http://www.small-land.org




More information about the Squeak-dev mailing list