]> pd.if.org Git - pdclib/commitdiff
Fixed bug in fclose.c. Fixed regtest drivers in fopen.c / fclose.c.
authorsolar <unknown>
Thu, 8 Jun 2006 05:18:06 +0000 (05:18 +0000)
committersolar <unknown>
Thu, 8 Jun 2006 05:18:06 +0000 (05:18 +0000)
functions/stdio/fclose.c
functions/stdio/fopen.c

index ff01058d59c005e581d495318a4721188b900451..f633de3e8cf1364cf7583dfa52e635e600fe4d58 100644 (file)
@@ -29,7 +29,7 @@ int fclose( struct _PDCLIB_file_t * stream )
             _PDCLIB_close( stream->handle );
             if ( previous != NULL )
             {
-                previous = current->next;
+                previous->next = current->next;
             }
             else
             {
@@ -50,6 +50,7 @@ int fclose( struct _PDCLIB_file_t * stream )
 
 int main( void )
 {
+#ifndef REGTEST
     /* FIXME: This is basically fopen() checking. Flushing and buffer-freeing is not checked. */
     struct _PDCLIB_file_t * file1;
     struct _PDCLIB_file_t * file2;
@@ -65,8 +66,11 @@ int main( void )
     TESTCASE( fclose( file1 ) == 0 );
     TESTCASE( _PDCLIB_filelist == file2 );
     TESTCASE( fclose( file2 ) == 0 );
-    TESTCASE( _PDCLIB_filelist == NULL );
+    TESTCASE( _PDCLIB_filelist == NULL ); /* FIXME: fails */
     system( "rm testfile1 testfile2" );
+#else
+    puts( " NOTEST fclose() test driver is PDCLib-specific." );
+#endif
     return TEST_RESULTS;
 }
 
index 2abb66407bb9bb7e80eb53dcecd0740148a2697e..1e9bd41358a60aa48484325bf9afe7333a4663e9 100644 (file)
@@ -98,6 +98,7 @@ fail:
 
 int main( void )
 {
+#ifndef REGTEST
     TESTCASE( filemode( "r" ) == _PDCLIB_FREAD );
     TESTCASE( filemode( "w" ) == _PDCLIB_FWRITE );
     TESTCASE( filemode( "a" ) == _PDCLIB_FAPPEND );
@@ -122,6 +123,9 @@ int main( void )
     TESTCASE( fopen( "testfile", "wr" ) == NULL ); /* Illegal mode */
     TESTCASE( fopen( "testfile", "w" ) != NULL );
     system( "rm testfile" );
+#else
+    puts( " NOTEST fopen() test driver is PDCLib-specific." );
+#endif
     return TEST_RESULTS;
 }