X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Fmisc.c;h=148d766c1dd00de8124142f11e2fbf8103a475ca;hb=75a16f75a954f16eff5a076aa4bb51ded85e70b7;hp=5107e1d5a3566d169fe2d23a8a8d52396b5a3cfc;hpb=28efbf69440f2043115b99e66fd5bc6752515f8b;p=chaz%2Ftar diff --git a/src/misc.c b/src/misc.c index 5107e1d..148d766 100644 --- a/src/misc.c +++ b/src/misc.c @@ -17,8 +17,8 @@ with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#include "system.h" -#include "rmt.h" +#include +#include #include "common.h" #include #include @@ -317,7 +317,8 @@ remove_any_file (const char *file_name, enum remove_option option) entry += entrylen + 1) { char *file_name_buffer = new_name (file_name, entry); - int r = remove_any_file (file_name_buffer, 1); + int r = remove_any_file (file_name_buffer, + RECURSIVE_REMOVE_OPTION); int e = errno; free (file_name_buffer); @@ -548,6 +549,10 @@ static void call_arg_error (char const *call, char const *name) { int e = errno; + /* TRANSLATORS: %s after `Cannot' is a function name, e.g. `Cannot open'. + Directly translating this to another language will not work, first because + %s itself is not translated. + Translate it as `%s: Function %s failed'. */ ERROR ((0, e, _("%s: Cannot %s"), quotearg_colon (name), call)); } @@ -557,6 +562,10 @@ static void call_arg_fatal (char const *call, char const *name) { int e = errno; + /* TRANSLATORS: %s after `Cannot' is a function name, e.g. `Cannot open'. + Directly translating this to another language will not work, first because + %s itself is not translated. + Translate it as `%s: Function %s failed'. */ FATAL_ERROR ((0, e, _("%s: Cannot %s"), quotearg_colon (name), call)); } @@ -566,6 +575,10 @@ static void call_arg_warn (char const *call, char const *name) { int e = errno; + /* TRANSLATORS: %s after `Cannot' is a function name, e.g. `Cannot open'. + Directly translating this to another language will not work, first because + %s itself is not translated. + Translate it as `%s: Function %s failed'. */ WARN ((0, e, _("%s: Warning: Cannot %s"), quotearg_colon (name), call)); } @@ -646,6 +659,30 @@ mknod_error (char const *name) call_arg_error ("mknod", name); } +void +exec_error (char const *name) +{ + call_arg_error ("exec", name); +} + +void +fork_error (char const *name) +{ + call_arg_error ("fork", name); +} + +void +dup2_error (char const *name) +{ + call_arg_error ("dup2", name); +} + +void +pipe_error (char const *name) +{ + call_arg_error ("pipe", name); +} + void open_error (char const *name) { @@ -685,8 +722,8 @@ read_error_details (char const *name, off_t offset, size_t size) char buf[UINTMAX_STRSIZE_BOUND]; int e = errno; ERROR ((0, e, - ngettext ("%s: Read error at byte %s, reading %lu byte", - "%s: Read error at byte %s, reading %lu bytes", + ngettext ("%s: Read error at byte %s, while reading %lu byte", + "%s: Read error at byte %s, while reading %lu bytes", size), quotearg_colon (name), STRINGIFY_BIGINT (offset, buf), (unsigned long) size)); @@ -698,8 +735,8 @@ read_warn_details (char const *name, off_t offset, size_t size) char buf[UINTMAX_STRSIZE_BOUND]; int e = errno; WARN ((0, e, - ngettext ("%s: Warning: Read error at byte %s, reading %lu byte", - "%s: Warning: Read error at byte %s, reading %lu bytes", + ngettext ("%s: Warning: Read error at byte %s, while reading %lu byte", + "%s: Warning: Read error at byte %s, while reading %lu bytes", size), quotearg_colon (name), STRINGIFY_BIGINT (offset, buf), (unsigned long) size)); @@ -824,6 +861,12 @@ symlink_error (char const *contents, char const *name) quotearg_colon (name), quote_n (1, contents))); } +void +stat_fatal (char const *name) +{ + call_arg_fatal ("stat", name); +} + void stat_error (char const *name) {