diff options
author | Lubomir I. Ivanov <neolit123@gmail.com> | 2013-02-23 18:33:13 +0200 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2013-02-23 15:22:34 -0800 |
commit | dd5e181890da34d717031748b797dd9e0bead5a3 (patch) | |
tree | c3729d498473930ec0c883d4d1f59c2acca2135a | |
parent | bf5a48a32c79e9802026b3a888f75557c1b11d8f (diff) | |
download | subsurface-dd5e181890da34d717031748b797dd9e0bead5a3.tar.gz |
statistics.c: Fix a potential compiler bug triggered in gcc 3.4.5
This may look as a simple formatting change and won't make much sense
to the C programmer. It is an actual bug fix in Subsurface for the
target compiler, since it introduces bogus instructions.
The "month" variable ends up being incremented up to 72 for a single
"month++" call (if inside offset brackets).
gcc -v
Configured with: ../gcc-3.4.5-20060117-3/configure --with-gcc --with-gnu-ld
--with-gnu-as --host=mingw32 --target=mingw32 --prefix=/mingw --enable-threads
--disable-nls --enable-languages=c,c++,f77,ada,objc,java --disable-win32-registry
--disable-shared --enable-sjlj-exceptions --enable-libgcj --disable-java-awt
--without-x --enable-java-gc=boehm --disable-libgcj-debug --enable-interpreter
--enable-hash-synchronization --enable-libstdcxx-debug
Thread model: win32
gcc version 3.4.5 (mingw-vista special r3)
OS: Windows 7 [6.1.7601] - x64
Better explained here:
http://lists.hohndel.org/pipermail/subsurface/2013-February/003967.html
Signed-off-by: Lubomir I. Ivanov <neolit123@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rw-r--r-- | statistics.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/statistics.c b/statistics.c index 96bc5db36..9cbfcc72f 100644 --- a/statistics.c +++ b/statistics.c @@ -361,7 +361,8 @@ static void update_yearly_stats() for (j = 0; combined_months < stats_yearly[i].selection_size; ++j) { combined_months += stats_monthly[month].selection_size; - process_interval_stats(stats_monthly[month++], &year_iter, &month_iter); + process_interval_stats(stats_monthly[month], &year_iter, &month_iter); + month++; } } } |