mirror of
https://github.com/sheumann/hush.git
synced 2024-12-27 01:32:08 +00:00
be more careful about cleaning up
This commit is contained in:
parent
3719e9e790
commit
77831c11d1
@ -32,16 +32,23 @@
|
|||||||
|
|
||||||
extern int fdflush_main(int argc, char **argv)
|
extern int fdflush_main(int argc, char **argv)
|
||||||
{
|
{
|
||||||
int fd;
|
int fd, result;
|
||||||
|
|
||||||
if (argc <= 1)
|
if (argc <= 1)
|
||||||
show_usage();
|
show_usage();
|
||||||
if ((fd = open(*(++argv), 0)) < 0)
|
if ((fd = open(*(++argv), 0)) < 0)
|
||||||
goto die_the_death;
|
goto die_the_death;
|
||||||
|
|
||||||
if (ioctl(fd, FDFLUSH, 0))
|
result = ioctl(fd, FDFLUSH, 0);
|
||||||
|
#ifdef CONFIG_FEATURE_CLEAN_UP
|
||||||
|
close(fd);
|
||||||
|
#endif
|
||||||
|
if (result) {
|
||||||
goto die_the_death;
|
goto die_the_death;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Don't bother closing. Exit does
|
||||||
|
* that, so we can save a few bytes */
|
||||||
return EXIT_SUCCESS;
|
return EXIT_SUCCESS;
|
||||||
|
|
||||||
die_the_death:
|
die_the_death:
|
||||||
|
@ -37,20 +37,25 @@
|
|||||||
extern int
|
extern int
|
||||||
freeramdisk_main(int argc, char **argv)
|
freeramdisk_main(int argc, char **argv)
|
||||||
{
|
{
|
||||||
|
int result;
|
||||||
FILE *f;
|
FILE *f;
|
||||||
|
|
||||||
if (argc != 2 || *argv[1] == '-') {
|
if (argc != 2) {
|
||||||
show_usage();
|
show_usage();
|
||||||
}
|
}
|
||||||
|
|
||||||
f = xfopen(argv[1], "r+");
|
f = xfopen(argv[1], "r+");
|
||||||
|
|
||||||
if (ioctl(fileno(f), BLKFLSBUF) < 0) {
|
result = ioctl(fileno(f), BLKFLSBUF);
|
||||||
|
#ifdef CONFIG_FEATURE_CLEAN_UP
|
||||||
|
fclose(f);
|
||||||
|
#endif
|
||||||
|
if (result < 0) {
|
||||||
perror_msg_and_die("failed ioctl on %s", argv[1]);
|
perror_msg_and_die("failed ioctl on %s", argv[1]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Don't bother closing. Exit does
|
/* Don't bother closing. Exit does
|
||||||
* that, so we can save a few bytes */
|
* that, so we can save a few bytes */
|
||||||
/* close(f); */
|
|
||||||
return EXIT_SUCCESS;
|
return EXIT_SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user