Mercurial > hg > octave-lyh
diff src/dirfns.cc @ 1489:3e705c864019
[project @ 1995-09-28 05:38:26 by jwe]
author | jwe |
---|---|
date | Thu, 28 Sep 1995 05:38:26 +0000 |
parents | 89c587478067 |
children | 0d9e10d10bd7 |
line wrap: on
line diff
--- a/src/dirfns.cc +++ b/src/dirfns.cc @@ -507,7 +507,11 @@ } else { - DIR *dir = opendir (dirname); + char *tmp = tilde_expand (dirname); + + DIR *dir = opendir (tmp); + + free (tmp); if (dir) { @@ -579,10 +583,19 @@ if (error_state) gripe_wrong_type_arg ("mkdir", args(0)); - else if (mkdir (dirname, 0777) < 0) + else { - status = -1; - error ("%s", strerror (errno)); + char *tmp = tilde_expand (dirname); + + int mkdir_retval = mkdir (tmp, 0777); + + free (tmp); + + if (mkdir_retval < 0) + { + status = -1; + error ("%s", strerror (errno)); + } } } else @@ -610,10 +623,19 @@ if (error_state) gripe_wrong_type_arg ("rmdir", args(0)); - else if (rmdir (dirname) < 0) + else { - status = -1; - error ("%s", strerror (errno)); + char *tmp = tilde_expand (dirname); + + int rmdir_retval = rmdir (tmp); + + free (tmp); + + if (rmdir_retval < 0) + { + status = -1; + error ("%s", strerror (errno)); + } } } else