From: Jim Meyering Date: Tue, 19 Jun 2007 06:13:40 +0000 (+0000) Subject: Eliminate one way canonicalize_filename_mode could exit. X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8adc35bb3da3ef19e2e3260c3c56f8abb8330c21;p=pspp Eliminate one way canonicalize_filename_mode could exit. * lib/canonicalize.c (canonicalize_filename_mode): Use mreadlink_with_size, not xreadlink_with_size. --- diff --git a/ChangeLog b/ChangeLog index 5fe1932a02..07db54214b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2007-06-19 Jim Meyering + + Eliminate one way canonicalize_filename_mode could exit. + * lib/canonicalize.c (canonicalize_filename_mode): + Use mreadlink_with_size, not xreadlink_with_size. + 2007-06-18 Paul Eggert Detect porting problems to FreeBSD/arm, which has time_t wider than diff --git a/lib/canonicalize.c b/lib/canonicalize.c index 48e4a239a3..eed7f40a83 100644 --- a/lib/canonicalize.c +++ b/lib/canonicalize.c @@ -47,7 +47,7 @@ #endif #include "pathmax.h" -#include "xreadlink.h" +#include "mreadlink.h" #if !HAVE_CANONICALIZE_FILE_NAME /* Return the canonical absolute name of file NAME. A canonical name @@ -246,10 +246,10 @@ canonicalize_filename_mode (const char *name, canonicalize_mode_t can_mode) goto error; } - buf = xreadlink_with_size (rname, st.st_size); + buf = mreadlink_with_size (rname, st.st_size); if (!buf) { - if (can_mode == CAN_MISSING) + if (can_mode == CAN_MISSING && errno != ENOMEM) continue; else goto error;