static void
create_file_with_contents (const char * path, const char * str)
{
+ int rv;
FILE * fp;
char * dir;
+ const int tmperr = errno;
dir = tr_dirname (path);
- tr_mkdirp (dir, 0700);
+ errno = 0;
+ rv = tr_mkdirp (dir, 0700);
+ assert (errno == 0);
+ assert (rv == 0);
tr_free (dir);
remove (path);
fclose (fp);
sync ();
+
+ errno = tmperr;
}
static void
{
int i;
int n;
+ int rv;
FILE * fp;
char * path;
char buf[32];
fprintf (stderr, "top %s exists %d\n", top, (int)tr_fileExists(top,NULL));
-errno = 0;
+ errno = 0;
path = tr_buildPath (top, "files-filled-with-zeroes", NULL);
- tr_mkdirp (path, 0700);
+ rv = tr_mkdirp (path, 0700);
+ assert (rv == 0);
+ assert (errno == 0);
fprintf (stderr, "%s:%d %s\n", __FILE__, __LINE__, path);
fprintf (stderr, "errno is %d (%s)\n", errno, tr_strerror (errno));
tr_free (path);
char * path = tr_strdup (path_in);
char * p, * pp;
struct stat sb;
- int done;
+ bool done;
+ int tmperr;
+ int rv;
/* walk past the root */
p = path;
++p;
pp = p;
- done = 0;
- while ((p =
- strchr (pp, TR_PATH_DELIMITER)) || (p = strchr (pp, '\0')))
+ done = false;
+ while ((p = strchr (pp, TR_PATH_DELIMITER)) || (p = strchr (pp, '\0')))
{
if (!*p)
- done = 1;
+ done = true;
else
*p = '\0';
- if (stat (path, &sb))
+ tmperr = errno;
+ rv = stat (path, &sb);
+ errno = tmperr;
+ if (rv)
{
/* Folder doesn't exist yet */
if (tr_mkdir (path, permissions))
{
- const int err = errno;
- tr_err (_(
- "Couldn't create \"%1$s\": %2$s"), path,
- tr_strerror (err));
+ tmperr = errno;
+ tr_err (_("Couldn't create \"%1$s\": %2$s"), path, tr_strerror (tmperr));
tr_free (path);
- errno = err;
+ errno = tmperr;
return -1;
}
}