explicitly with stat(2). Fixes Savannah bug #35919.
2012-09-09 Paul Smith <psmith@gnu.org>
+ * function.c (func_realpath): BSD realpath(3) doesn't fail if the
+ file does not exist: use stat. Fixes Savannah bug #35919.
+
* file.c (expand_deps): Duplicate the current variable buffer, not
the old pointer. Fixes Savannah bug #36925.
const char *path = 0;
int doneany = 0;
unsigned int len = 0;
-#ifndef HAVE_REALPATH
struct stat st;
-#endif
PATH_VAR (in);
PATH_VAR (out);
#ifdef HAVE_REALPATH
realpath (in, out)
#else
- abspath (in, out) && stat (out, &st) == 0
+ abspath (in, out)
#endif
- )
+ && stat (out, &st) == 0)
{
o = variable_buffer_output (o, out, strlen (out));
o = variable_buffer_output (o, " ", 1);