diff options
Diffstat (limited to 'cpukit/libcsupport/src/open.c')
-rw-r--r-- | cpukit/libcsupport/src/open.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/cpukit/libcsupport/src/open.c b/cpukit/libcsupport/src/open.c index 2ee99f1f4c..22773454ba 100644 --- a/cpukit/libcsupport/src/open.c +++ b/cpukit/libcsupport/src/open.c @@ -96,13 +96,16 @@ static int do_open( } } - rtems_libio_iop_flags_set( iop, rtems_libio_fcntl_flags( oflag ) ); rtems_filesystem_eval_path_extract_currentloc( &ctx, &iop->pathinfo ); rtems_filesystem_eval_path_cleanup( &ctx ); + iop->flags = rtems_libio_fcntl_flags( oflag ); + rv = (*iop->pathinfo.handlers->open_h)( iop, path, oflag, mode ); if ( rv == 0 ) { + rtems_libio_iop_flags_set( iop, LIBIO_FLAGS_OPEN ); + if ( truncate ) { rv = ftruncate( fd, 0 ); if ( rv != 0 ) { |