X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=lib%2Fopenat-die.c;h=0db20b9cd09b4e3bdba253391c63a6d6c2e81c14;hb=fa43e0af674cf072f407fda6ec95cae536f4e4a0;hp=81498ae2e3ec723a8955bf7559a4ffa5ec534cd5;hpb=4ae5a6c56114431c35f0867bcec618855981f40c;p=gnulib.git diff --git a/lib/openat-die.c b/lib/openat-die.c index 81498ae2e..0db20b9cd 100644 --- a/lib/openat-die.c +++ b/lib/openat-die.c @@ -1,6 +1,6 @@ /* Report a save- or restore-cwd failure in our openat replacement and then exit. - Copyright (C) 2005, 2006, 2008 Free Software Foundation, Inc. + Copyright (C) 2005-2006, 2008-2011 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -26,13 +26,12 @@ #include "gettext.h" #define _(msgid) gettext (msgid) -#define N_(msgid) msgid void openat_save_fail (int errnum) { error (exit_failure, errnum, - _("unable to record current working directory")); + _("unable to record current working directory")); /* The `noreturn' attribute cannot be applied to error, since it returns when its first argument is 0. To help compilers understand that this @@ -41,11 +40,16 @@ openat_save_fail (int errnum) abort (); } + +/* Exit with an error about failure to restore the working directory + during an openat emulation. The caller must ensure that fd 2 is + not a just-opened fd, even when openat_safer is not in use. */ + void openat_restore_fail (int errnum) { error (exit_failure, errnum, - _("failed to return to initial working directory")); + _("failed to return to initial working directory")); /* As above. */ abort ();