]> pd.if.org Git - pdclib/blobdiff - functions/stdio/fwrite.c
Switched to tmpfile() where appropriate.
[pdclib] / functions / stdio / fwrite.c
index 9cf3cadf9586504803945f79c2699be34336a2cb..4eabd22943db112e85f8cc07f2cf1ff83b909a72 100644 (file)
@@ -7,13 +7,13 @@
 */
 
 #include <stdio.h>
+#include <_PDCLIB_glue.h>
+
 #ifndef REGTEST
 
 #include <stdbool.h>
 #include <string.h>
 
-#include <_PDCLIB_glue.h>
-
 size_t fwrite( const void * _PDCLIB_restrict ptr, size_t size, size_t nmemb, struct _PDCLIB_file_t * _PDCLIB_restrict stream )
 {
     if ( _PDCLIB_prepwrite( stream ) == EOF )
@@ -27,7 +27,6 @@ size_t fwrite( const void * _PDCLIB_restrict ptr, size_t size, size_t nmemb, str
     {
         for ( size_t size_i = 0; size_i < size; ++size_i )
         {
-            /* TODO: Should line-buffered streams be flushed on '\n' or system EOL? */
             if ( ( stream->buffer[ stream->bufidx++ ] = ((char*)ptr)[ nmemb_i * size + size_i ] ) == '\n' )
             {
                 /* Remember last newline, in case we have to do a partial line-buffered flush */
@@ -88,12 +87,10 @@ size_t fwrite( const void * _PDCLIB_restrict ptr, size_t size, size_t nmemb, str
 int main( void )
 {
     FILE * fh;
-    remove( "testfile" );
-    TESTCASE( ( fh = fopen( "testfile", "w" ) ) != NULL );
+    TESTCASE( ( fh = tmpfile() ) != NULL );
     TESTCASE( fwrite( "SUCCESS testing fwrite()\n", 1, 25, fh ) == 25 );
-    TESTCASE( fclose( fh ) == 0 );
     /* TODO: Add readback test. */
-    TESTCASE( remove( "testfile" ) == 0 );
+    TESTCASE( fclose( fh ) == 0 );
     return TEST_RESULTS;
 }