From d71fcabaa6bc42e82d83060da49abff2b41ee272 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Tue, 12 Oct 1999 18:44:40 +0000 Subject: Added call to freenod to let each filesystem free its own internal node used to manage file access. --- c/src/lib/libc/mknod.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'c/src/lib/libc/mknod.c') diff --git a/c/src/lib/libc/mknod.c b/c/src/lib/libc/mknod.c index 97f6cb0884..48444f8549 100644 --- a/c/src/lib/libc/mknod.c +++ b/c/src/lib/libc/mknod.c @@ -52,8 +52,15 @@ int mknod( if ( result != 0 ) return -1; - if ( !temp_loc.ops->mknod ) + if ( !temp_loc.ops->mknod ) { + if ( temp_loc.ops->freenod ) + (*temp_loc.ops->freenod)( &temp_loc ); set_errno_and_return_minus_one( ENOTSUP ); + } - return (*temp_loc.ops->mknod)( name_start, mode, dev, &temp_loc ); + result = (*temp_loc.ops->mknod)( name_start, mode, dev, &temp_loc ); + if ( temp_loc.ops->freenod ) + (*temp_loc.ops->freenod)( &temp_loc ); + + return result; } -- cgit v1.2.3