Fix file unlinking
authorJens Axboe <jens.axboe@oracle.com>
Fri, 23 Mar 2007 14:20:54 +0000 (15:20 +0100)
committerJens Axboe <jens.axboe@oracle.com>
Fri, 23 Mar 2007 14:20:54 +0000 (15:20 +0100)
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
filesetup.c

index f6e2a19c19b74a0fa175b710440c699712344466..137afacc179dd8ea6744818f97afe90d48fa74b9 100644 (file)
@@ -523,15 +523,15 @@ void close_files(struct thread_data *td)
        unsigned int i;
 
        for_each_file(td, f, i) {
        unsigned int i;
 
        for_each_file(td, f, i) {
-               if (!f->file_name && (f->flags & FIO_FILE_UNLINK) &&
-                   f->filetype == FIO_TYPE_FILE) {
+               if ((f->flags & FIO_FILE_UNLINK) &&
+                   f->filetype == FIO_TYPE_FILE)
                        unlink(f->file_name);
                        unlink(f->file_name);
-                       free(f->file_name);
-                       f->file_name = NULL;
-               }
 
                td_io_close_file(td, f);
 
 
                td_io_close_file(td, f);
 
+               free(f->file_name);
+               f->file_name = NULL;
+
                if (f->file_map) {
                        free(f->file_map);
                        f->file_map = NULL;
                if (f->file_map) {
                        free(f->file_map);
                        f->file_map = NULL;