gnustep-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: NSHomeDirectory() problems on windows


From: S.J.Chun
Subject: Re: NSHomeDirectory() problems on windows
Date: Tue, 22 Jul 2003 12:51:48 +0900 (KST)

In shell script based programs like makefiles package, the spaces in 
USERPROFILE or HOME make problems. But
defaults.exe like compiled program which does not depends on IFS(using spaces), 
it does work! I think fixing
scipts will be more appropriate way of doing the rights :-)

  ----- Original Message -----
  From: Richard Frith-Macdonald <address@hidden>
  To: Roland Schwingel <address@hidden>
  Cc: address@hidden,address@hidden
  Sent: Mon, 21 Jul 2003 16:38:44 +0100
  Subject: Re: NSHomeDirectory() problems on windows

  
  On Monday, July 21, 2003, at 02:20 PM, Roland Schwingel wrote:
  
  > Hi...
  >
  > A while ago in NSUser.m the way changed how the users homedirectory is 
  > depicted. Before this change the implementation was much like the 
  > Openstep for Windows one. Constructing it out of  $HOMEPATH and 
  > $HOMEDRIVE. Now it is changed to first query $USERPROFILE (which so 
  > violates the OpenStep specification). And if not found fall back to 
  > old (in my eyes correct implementation).
  >
  > By the way there is maybe a bug in the current implementation for 
  > asking $USERPROFILE. After retrieving the environmentvariable it is 
  > checked to not contain spaces. Well at least in german versions of 
  > Windows 2000 and Windows XP there are spaces by default. $USERPROFILE 
  > in german versions of windows always contains "Dokumente und 
  > Einstellungen". So it would be never used here, but elsewehere....
  
  That's because the makefile package *must* agree with the base library 
  about the users home directory, and spaces in paths used by make can 
  easily break the package ... we can't accept a directory path 
  containing spaces for the home directory.
  
  I think the default setup in english has spaces in there too ... so I'm 
  not sure that there is much point using $USERPROFILE at all... it 
  probably doesn't work for the vast majority of users.
  
  > I personally hate the way windows userprofiles work. We use 
  > NSHomeDirectory() here as basepath for our resources, which should 
  > never ever reside in the userprofile at least because of their size. 
  > So we really rely on this to not point to $USERPROFILE.
  >
  > So what to do? I think this wasn't changed out of pure fun... Even I 
  > would like to have it back again to be compliant to the openstep for 
  > windows version, I suggest to make it eventually switchable. For 
  > example using a new environment variable (eg. 
  > GNUSTEP_WIN32_HOMEDIRSTYLE). If it is missing (or set to "profile") 
  > the current behaviour is used. If set to eg. "openstep" it is no 
  > longer queried for $USERPROFILE instead the HOMEPATH/HOMEDRIVE variant 
  > will be used directly...
  
  I think this was changed because a windows user said it should work 
  that way (since it's microsofts official method for finding the home 
  directory), and nobody on the discussion list said otherwise.  I'd 
  quite happily either remove the usage of USERPROFILE altogether, (as I 
  don't know if it's ever usable in practice).
  What do other windows users think?
  
  
  
  
  _______________________________________________
  Discuss-gnustep mailing list
  address@hidden
  http://mail.gnu.org/mailman/listinfo/discuss-gnustep
  




reply via email to

[Prev in Thread] Current Thread [Next in Thread]