283 |
|
// Open temporary file for resource fork |
284 |
|
char rname[L_tmpnam]; |
285 |
|
tmpnam(rname); |
286 |
< |
int rfd = open(rname, O_RDWR | O_CREAT | O_TRUNC, 0664); |
286 |
> |
int rfd = open(rname, O_RDWR | O_CREAT | O_TRUNC, 0666); |
287 |
|
if (rfd < 0) { |
288 |
|
close(fd); |
289 |
|
return -1; |
455 |
|
} |
456 |
|
return actual; |
457 |
|
} |
458 |
+ |
|
459 |
+ |
|
460 |
+ |
/* |
461 |
+ |
* Remove file/directory, returns false on error (and sets errno) |
462 |
+ |
*/ |
463 |
+ |
|
464 |
+ |
bool extfs_remove(const char *path) |
465 |
+ |
{ |
466 |
+ |
if (remove(path) < 0) { |
467 |
+ |
if (errno == EISDIR) |
468 |
+ |
return rmdir(path) == 0; |
469 |
+ |
else |
470 |
+ |
return false; |
471 |
+ |
} |
472 |
+ |
return true; |
473 |
+ |
} |