From 83761b9ffde5bc54e06f7a4e12030d700932489f Mon Sep 17 00:00:00 2001 From: Josh Coalson Date: Tue, 4 Jun 2002 05:56:54 +0000 Subject: [PATCH] allow file generator to return the filesize --- src/test_unit/file_utils.c | 11 ++++++++++- src/test_unit/file_utils.h | 2 +- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/test_unit/file_utils.c b/src/test_unit/file_utils.c index 2a80293f..ac5473e5 100644 --- a/src/test_unit/file_utils.c +++ b/src/test_unit/file_utils.c @@ -92,7 +92,7 @@ FLAC__bool file_utils__remove_file(const char *filename) return file_utils__change_stats(filename, /*read_only=*/false) && 0 == unlink(filename); } -FLAC__bool file_utils__generate_flacfile(const char *output_filename, unsigned length, const FLAC__StreamMetaData *streaminfo, FLAC__StreamMetaData **metadata, unsigned num_metadata) +FLAC__bool file_utils__generate_flacfile(const char *output_filename, unsigned *output_filesize, unsigned length, const FLAC__StreamMetaData *streaminfo, FLAC__StreamMetaData **metadata, unsigned num_metadata) { FLAC__int32 samples[1024]; FLAC__StreamEncoder *encoder; @@ -160,5 +160,14 @@ FLAC__bool file_utils__generate_flacfile(const char *output_filename, unsigned l FLAC__stream_encoder_delete(encoder); + if(0 != output_filesize) { + struct stat filestats; + + if(stat(output_filename, &filestats) != 0) + return false; + else + *output_filesize = (unsigned)filestats.st_size; + } + return true; } diff --git a/src/test_unit/file_utils.h b/src/test_unit/file_utils.h index 6e980077..e78e2571 100644 --- a/src/test_unit/file_utils.h +++ b/src/test_unit/file_utils.h @@ -22,4 +22,4 @@ FLAC__bool file_utils__change_stats(const char *filename, FLAC__bool read_only); FLAC__bool file_utils__remove_file(const char *filename); -FLAC__bool file_utils__generate_flacfile(const char *output_filename, unsigned length, const FLAC__StreamMetaData *streaminfo, FLAC__StreamMetaData **metadata, unsigned num_metadata); +FLAC__bool file_utils__generate_flacfile(const char *output_filename, unsigned *output_filesize, unsigned length, const FLAC__StreamMetaData *streaminfo, FLAC__StreamMetaData **metadata, unsigned num_metadata);