[GRASS-dev] libgis: ERROR: Unable to make mapset element
cell_misc/...
Glynn Clements
glynn at gclements.plus.com
Sat Mar 7 02:29:59 EST 2009
Markus Neteler wrote:
> > access() sets errno when it fails.
> >
> > If you want the reason why mkdir() failed, you need to test the return
> > value from G_mkdir(), e.g.:
> >
> > if (access(path, 0) != 0)
> > if (G_mkdir(path) != 0)
> > G_fatal_error(_("Unable to make mapset element %s (%s): %s"),
> > p_element, path, strerror(errno));
>
> Ah thanks. I see now that access() is used twice:
> http://trac.osgeo.org/grass/browser/grass/trunk/lib/gis/mapset_msc.c#L57
>
> I assume that I can remove the first try? see attached patch.
> Or is a second try to access unavoidable?
It should be safe to remove the second access() call, but I would be
inclined to leave it. Checking that the directory actually exists is
more robust than assuming that it will from the fact that G_mkdir()
succeeded.
--
Glynn Clements <glynn at gclements.plus.com>
More information about the grass-dev
mailing list