Opened 15 years ago
Last modified 15 years ago
#755 closed defect
trying to start in mapset you don't own gives wrong error msg — at Version 1
Reported by: | hamish | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | 6.4.0 |
Component: | Default | Version: | svn-develbranch6 |
Keywords: | mapset access | Cc: | |
CPU: | x86-32 | Platform: | Linux |
Description (last modified by )
Hi,
if I do "chmod 999.999 $LOCATION/user1" to make my user account not the owner of a mapset, and then start grass with the full path to the mapset I get this error:
Cleaning up temporary files ... Starting GRASS ... $LOCATION/user1/.gislock: Permission denied ERROR: $GISBASE/etc/lock: hamish is currently running GRASS in selected mapset (file $LOCATION/user1/.gislock found). Concurrent use not allowed.
user1 is drwxr-xr-x, so the Permission denied comes from the fact that etc/lock can't write the .gislock file, not that my current user account already has a copy there. (I checked, the file doesn't exist)
So that Permission denied needs to be better caught I guess. or improve G__mapset_permissions() or G__mapset_permissions2() and it's a case of the error message being a bit too overenthusiastic?
if I start GRASS with -tcltk the mapset is simply missing from the list (greyed out would be nicer if $MAPSET/WIND exists but we don't own it). I don't have wx on this machine to test the wxGUI startup, nor did I test changing mapsets with g.mapset. And no idea what happens if you force the mapset change with g.gisenv.
Hamish