libbb: introduce and use xrename and rename_or_warn.

This commit is contained in:
Denis Vlasenko
2008-02-17 14:28:53 +00:00
parent ffae845cfd
commit cb448fe01b
10 changed files with 33 additions and 39 deletions

View File

@@ -98,11 +98,6 @@ int wait4pid(int pid)
if (WIFSIGNALED(status))
return WTERMSIG(status) + 1000;
return 0;
if (WIFEXITED(status))
return WEXITSTATUS(status);
if (WIFSIGNALED(status))
return WTERMSIG(status) + 1000;
return 0;
}
#if ENABLE_FEATURE_PREFER_APPLETS

View File

@@ -146,18 +146,32 @@ int open_or_warn(const char *pathname, int flags)
return open3_or_warn(pathname, flags, 0666);
}
void xpipe(int filedes[2])
{
if (pipe(filedes))
bb_perror_msg_and_die("can't create pipe");
}
void xunlink(const char *pathname)
{
if (unlink(pathname))
bb_perror_msg_and_die("can't remove file '%s'", pathname);
}
void xrename(const char *oldpath, const char *newpath)
{
if (rename(oldpath, newpath))
bb_perror_msg_and_die("can't move '%s' to '%s'", oldpath, newpath);
}
int rename_or_warn(const char *oldpath, const char *newpath)
{
int n = rename(oldpath, newpath);
if (n)
bb_perror_msg("can't move '%s' to '%s'", oldpath, newpath);
return n;
}
void xpipe(int filedes[2])
{
if (pipe(filedes))
bb_perror_msg_and_die("can't create pipe");
}
// Turn on nonblocking I/O on a fd
int ndelay_on(int fd)
{