Fixed bug where using --replay-gain without any padding option caused only a small...
authorJosh Coalson <jcoalson@users.sourceforce.net>
Tue, 31 Jul 2007 00:35:33 +0000 (00:35 +0000)
committerJosh Coalson <jcoalson@users.sourceforce.net>
Tue, 31 Jul 2007 00:35:33 +0000 (00:35 +0000)
doc/html/changelog.html
src/flac/main.c

index 492ef9f..ccf4357 100644 (file)
@@ -80,6 +80,7 @@
                                flac:
                                <ul>
                                        <li>Added a new option <span class="argument"><a href="documentation_tools_flac.html#flac_options_no_utf8_convert">--no-utf8-convert</a></span> which works like it does in <span class="commandname">metaflac</span> (<a href="https://sourceforge.net/tracker/index.php?func=detail&amp;aid=973740&amp;group_id=13478&amp;atid=363478">SF #973740</a>).</li>
+                                       <li>Fixed bug where using <span class="argument">--replay-gain</span> without any padding option caused only a small PADDING block to be created (<a href="https://sourceforge.net/tracker/index.php?func=detail&amp;aid=1760790&amp;group_id=13478&amp;atid=113478">SF #1760790</a>).</li>
                                </ul>
                        </li>
                        <li>
index 9b200d3..53ea96e 100644 (file)
@@ -28,6 +28,7 @@
 #include <stdlib.h>
 #include <string.h>
 #include <time.h>
+#include <unistd.h>
 
 #if !defined _MSC_VER && !defined __MINGW32__
 /* unlink is in stdio.h in VC++ */
@@ -432,7 +433,10 @@ int do_it(void)
                         * tags that we will set later, to avoid rewriting the
                         * whole file.
                         */
-                       if(option_values.padding <= 0) {
+                       if(
+                               (option_values.padding >= 0 && option_values.padding < GRABBAG__REPLAYGAIN_MAX_TAG_SPACE_REQUIRED) ||
+                               (option_values.padding < 0 && FLAC_ENCODE__DEFAULT_PADDING < GRABBAG__REPLAYGAIN_MAX_TAG_SPACE_REQUIRED)
+                       ) {
                                flac__utils_printf(stderr, 1, "NOTE: --replay-gain may leave a small PADDING block even with --no-padding\n");
                                option_values.padding = GRABBAG__REPLAYGAIN_MAX_TAG_SPACE_REQUIRED;
                        }