[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Bug of libcsupport open?
- Date: Mon, 25 Aug 2008 03:53:40 +0800
- From: cquark at gmail.com (Wei Shen)
- Subject: Bug of libcsupport open?
Hi,
I made a patch for cpukit/libcsupport/src/open.c.
--- open.c 2008-08-22 14:19:45.000000000 -0700
+++ open.c.new 2008-08-22 14:11:13.000000000 -0700
@@ -194,6 +194,8 @@
rtems_libio_free( iop );
if ( loc_to_free )
rtems_filesystem_freenode( loc_to_free );
+ if ( rc == -1 )
+ return -1;
rtems_set_errno_and_return_minus_one( rc );
}
Also append a patch for the mtime and ctime update in
IMFS_memfile_write (I previously posted a reverse patch by mistake).
--- imfs.h 2008-08-22 14:31:37.000000000 -0700
+++ imfs.h.new 2008-08-22 14:28:46.000000000 -0700
@@ -196,12 +196,12 @@
_jnode->stat_ctime = (time_t) tv.tv_sec; \
} while (0)
-#define IMFS_atime_mtime_update( _jnode ) \
+#define IMFS_mtime_ctime_update( _jnode ) \
do { \
struct timeval tv; \
gettimeofday( &tv, 0 ); \
_jnode->stat_mtime = (time_t) tv.tv_sec; \
- _jnode->stat_atime = (time_t) tv.tv_sec; \
+ _jnode->stat_ctime = (time_t) tv.tv_sec; \
} while (0)
typedef struct {
--- memfile.c 2008-08-22 14:31:18.000000000 -0700
+++ memfile.c.new 2008-08-22 14:30:09.000000000 -0700
@@ -844,7 +844,7 @@
copied += to_copy;
}
- IMFS_atime_mtime_update( the_jnode );
+ IMFS_mtime_ctime_update( the_jnode );
return copied;
}
Regards,
Wei