From a007ef1af0def1870e3af6ffed09aa67edb6b195 Mon Sep 17 00:00:00 2001 From: Dirk Engling Date: Wed, 3 Jun 2015 11:22:09 +0200 Subject: Accumulate return value of write() to finally silence warnings --- src/export/extract_version_1.c | 8 +++++--- src/export/extract_version_3.c | 11 +++++++---- src/export/extract_version_4.c | 5 ++++- src/export/split_version_2.c | 7 +++++-- src/export/split_version_3.c | 6 +++++- 5 files changed, 26 insertions(+), 11 deletions(-) diff --git a/src/export/extract_version_1.c b/src/export/extract_version_1.c index c727b4f..8ec199e 100644 --- a/src/export/extract_version_1.c +++ b/src/export/extract_version_1.c @@ -190,6 +190,7 @@ int main( ) { char filename[1024]; MAP f; + ssize_t temp = 0; int i; for( i=0; i<14; ++i ) @@ -210,15 +211,16 @@ int main( ) /* Write out results */ for( i=0; i<14; ++i ) { /* if( g_state.outfill[i] > 1024*1024*6 ) printf( "Large: %s %zd\n", g_state.ort, g_state.outfill[i] ); */ - (void)write( g_state.outfiles[i], g_state.outbuf[i], g_state.outfill[i] ); + temp += write( g_state.outfiles[i], g_state.outbuf[i], g_state.outfill[i] ); g_state.outfill[i] = 0; } } for( i=0; i<14; ++i ) { - (void)write( g_state.outfiles[i], g_state.outbuf[i], g_state.outfill[i] ); + temp += write( g_state.outfiles[i], g_state.outbuf[i], g_state.outfill[i] ); close( g_state.outfiles[i] ); } - + if( !temp ) + exit(1); return 0; } diff --git a/src/export/extract_version_3.c b/src/export/extract_version_3.c index 329c1a8..a291771 100644 --- a/src/export/extract_version_3.c +++ b/src/export/extract_version_3.c @@ -30,6 +30,7 @@ int main( int args, char **argv ) { int filenum = 0, run = 1, first_run = 1; size_t offset = 0, old_offset = 0, reported = 0, enc_len = 32; + ssize_t temp = 0; uint8_t mantra[4], id0, id5, *mapped_file; MAP map; @@ -113,11 +114,11 @@ int main( int args, char **argv ) /* Open file and dump our de-"crypted" header and then rest of file */ fh = open( filename, O_CREAT | O_TRUNC | O_WRONLY, 0644 ); if( enc_len > header_len ) { - (void)write( fh, df, enc_len ); - (void)write( fh, mf + enc_len, offset - old_offset - enc_len ); + temp += write( fh, df, enc_len ); + temp += write( fh, mf + enc_len, offset - old_offset - enc_len ); } else { - (void)write( fh, df, header_len ); - (void)write( fh, mf + header_len, offset - old_offset - header_len ); + temp += write( fh, df, header_len ); + temp += write( fh, mf + header_len, offset - old_offset - header_len ); } close( fh ); } @@ -126,5 +127,7 @@ int main( int args, char **argv ) } unmap_file( &map ); + if( !temp ) + exit(1); return 0; } diff --git a/src/export/extract_version_4.c b/src/export/extract_version_4.c index 252831a..1dbaf40 100644 --- a/src/export/extract_version_4.c +++ b/src/export/extract_version_4.c @@ -16,6 +16,7 @@ int main(int argc, char **argv) { char respath[32]; /* file_XXXXX\0 */ int zres = 0, filenum = 0, resfile; size_t i, offs = 0, reported = 0; + ssize_t temp = 0; MAP in; if( argc != 2 ) exit(111); @@ -50,7 +51,7 @@ error_continue: fprintf( stderr, "Could not open output file %s\n", respath ); exit(1); } - (void)write( resfile, output, z.total_out ); + temp += write( resfile, output, z.total_out ); close( resfile ); offs += z.total_in; @@ -66,5 +67,7 @@ error_continue: if( reported < 10 ) printf( "100%% " ); fflush( stdout ); + if( !temp ) + exit(1); return 0; } diff --git a/src/export/split_version_2.c b/src/export/split_version_2.c index 6eafe55..c14da18 100644 --- a/src/export/split_version_2.c +++ b/src/export/split_version_2.c @@ -193,6 +193,7 @@ int main( int args, char **argv ) { char filename[1024]; MAP data, index; uint32_t * indoff; + ssize_t temp = 0; size_t limit; int i; @@ -237,17 +238,19 @@ int main( int args, char **argv ) { if( g_state.outfill[0] > limit ) for( i=0; i 1024*1024*6 ) printf( "Large: %zd\n", g_state.outfill[i] ); - (void)write( g_state.outfiles[i], g_state.outbuf[i], g_state.outfill[i] ); + temp += write( g_state.outfiles[i], g_state.outbuf[i], g_state.outfill[i] ); g_state.outfill[i] = 0; } } for( i=0; i 1 ) base = atoi( args[1] ); @@ -49,10 +50,13 @@ int main( int argc, char **args ) { off = p[file+1]; /* Look for end of this chunk, which is strings long */ for( strnr=0; strnr < count; ++strnr ) { while( f[off++] ) {}; f[off-1] = '\n'; } - (void)write( outfiles[file], f + p[file+1], off - p[file+1] ); + temp += write( outfiles[file], f + p[file+1], off - p[file+1] ); } } for( i=0; i<64; ++i ) close( outfiles[i] ); + if( !temp ) + exit(1); + return 0; } -- cgit v1.2.3