Commit 9f85cb63 authored by Josh Coalson's avatar Josh Coalson
Browse files

fix problem with code that checks if temp file is needed, before it would...

fix problem with code that checks if temp file is needed, before it would compare filenames, now it compares inodes
parent f461a7bd
......@@ -1777,9 +1777,10 @@ int encode_file(const char *infilename, FLAC__bool is_first_file, FLAC__bool is_
common_options.debug.disable_fixed_subframes = option_values.debug.disable_fixed_subframes;
common_options.debug.disable_verbatim_subframes = option_values.debug.disable_verbatim_subframes;
/* if infilename==outfilename, we need to write to a temporary file */
if(encode_infile != stdin && 0 == strcmp(infilename, outfilename)) { /*@@@@@@ BUG strcmp is not adequate to check if infilename and outfilename are the same file */
static const char *tmp_suffix = ".tmp";
/* if infilename and outfilename point to the same file, we need to write to a temporary file */
if(encode_infile != stdin && grabbag__file_are_same(infilename, outfilename)) {
static const char *tmp_suffix = ".tmp,fl-ac+en'c";
/*@@@ still a remote possibility that a file with this filename exists */
if(0 == (internal_outfilename = malloc(strlen(outfilename)+strlen(tmp_suffix)+1))) {
flac__utils_printf(stderr, 1, "ERROR allocating memory for tempfile name\n");
return 1;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment