[GRASS-dev] Re: No longer able to open a mapset by symbolic link

Joel Pitt joel.pitt at gmail.com
Tue Apr 3 00:16:15 EDT 2007


After searching through the code, the problem seems to be:

if (stat (path, &info) != 0)
    return -1;

changing to:

if (G_lstat (path, &info) != 0)
    return -1;
if (!S_ISDIR(info.st_mode))
    return -1;

in lib/gis/mapset_msc.c - and S_ISDIR, from what comments say, doesn't
treat links
as directories, even if they point to one.

-J

On 4/3/07, Joel Pitt <joel.pitt at gmail.com> wrote:
> Hi all,
>
> I just retrieved the latest weekly CVS snapshot for GRASS and found
> I'm no longer able to access mapsets that are referred to by symbolic
> links in linux.
>
> Is this intended behaviour (possibly related to the windows port)? Or a bug?
>
> Strangely the symbolic link is displayed as being an available mapset,
> but when trying to change to that mapset the mapset is said to not
> exist:
>
> ----
> GRASS 6.3.cvs (nzmg):~/gis_databases/nzmg > g.mapsets mapset=test2
> ERROR: [test2] - no such mapset
>
> Available mapsets:
>
> PERMANENT    gypsy_moth   lhumile      lhumile.old  test         test2
> ----
> test2 is a copy of test, but in ~/:
> ----
> GRASS 6.3.cvs (nzmg):~/gis_databases/nzmg > ls
> gypsy_moth
> lhumile -> /media/simulations/gis_databases/nzmg/lhumile
> lhumile.old
> PERMANENT
> test
> test2 -> /home/joel/test2/
> ----
> Permission of all the files/directories look fine.
>
> I'll submit a bug request, but wasn't sure whether this behaviour has
> been discussed and decided as intended. I hope not, because I use it
> to separate out simulation results (huge and stored on an external
> server/HDD) and input data for the simulations (stored locally).
>
> Thanks,
> --
> -Joel
>
> "Unless you try to do something beyond what you have mastered, you
> will never grow." -C.R. Lawton
>


-- 
-Joel

"Unless you try to do something beyond what you have mastered, you
will never grow." -C.R. Lawton




More information about the grass-dev mailing list