From efb5450a87d50c53584d361c92d5928098233f58 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Wed, 17 Oct 2001 17:57:42 +0000 Subject: 2001-10-17 Till Straumann * These changes were discussed and reviewed by many people but the primary people were Jennifer Averett and Eugeny Mints . * libc/utime.c: Add missing call to rtems_filesystem_freenode() at verification that utime is supported by the filesystem. * libc/link.c: Remove calls to freenode when the node was not successfully allocated. * libc/unmount.c: In the method file_systems_below_this_mountpoint() added calls to correctly free fs_root_loc when a failure occurs. * libc/open.c: Add freenode calls upon failure. * libc/open.c, lib/libc/close.c: (PENDING -- NOT INCLUDED THIS TIMER) Modifications the move the freenode from open() to close() (also part of this patch) are pending further discussion. --- cpukit/libcsupport/src/utime.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'cpukit/libcsupport/src/utime.c') diff --git a/cpukit/libcsupport/src/utime.c b/cpukit/libcsupport/src/utime.c index dcfad893cd..ba9a50a63d 100644 --- a/cpukit/libcsupport/src/utime.c +++ b/cpukit/libcsupport/src/utime.c @@ -32,8 +32,10 @@ int utime( if ( rtems_filesystem_evaluate_path( path, 0x00, &temp_loc, TRUE ) ) return -1; - if ( !temp_loc.ops->utime_h ) + if ( !temp_loc.ops->utime_h ){ + rtems_filesystem_freenode( &temp_loc ); set_errno_and_return_minus_one( ENOTSUP ); + } result = (*temp_loc.ops->utime_h)( &temp_loc, times->actime, times->modtime ); -- cgit v1.2.3