Commit f0d80d43 authored by Paul Eggert's avatar Paul Eggert

update-game-score: fix bug with -r

* update-game-score.c (main): Don't set 'scores' to garbage when
-r is specified and scorecount != MAX_SCORES.  This bug was
introduced in the 2002-04-10 change, and was found with gcc
-Wstrict-overflow (GCC 4.5.2, x86-64).
parent 37dd57d1
2011-03-21 Paul Eggert <eggert@cs.ucla.edu>
update-game-score: fix bug with -r
* update-game-score.c (main): Don't set 'scores' to garbage when
-r is specified and scorecount != MAX_SCORES. This bug was
introduced in the 2002-04-10 change, and was found with gcc
-Wstrict-overflow (GCC 4.5.2, x86-64).
fakemail: Remove dependency on ignore-value.
This undoes some of the recent fakemail-related changes.
It is made possible due to recent changes to gnulib's stdio module.
......
......@@ -242,13 +242,15 @@ main (int argc, char **argv)
push_score (&scores, &scorecount, newscore, user_id, newdata);
sort_scores (scores, scorecount, reverse);
/* Limit the number of scores. If we're using reverse sorting, then
we should increment the beginning of the array, to skip over the
*smallest* scores. Otherwise, we just decrement the number of
scores, since the smallest will be at the end. */
also increment the beginning of the array, to skip over the
*smallest* scores. Otherwise, just decrementing the number of
scores suffices, since the smallest is at the end. */
if (scorecount > MAX_SCORES)
scorecount -= (scorecount - MAX_SCORES);
if (reverse)
scores += (scorecount - MAX_SCORES);
{
if (reverse)
scores += (scorecount - MAX_SCORES);
scorecount = MAX_SCORES;
}
if (write_scores (scorefile, scores, scorecount) < 0)
{
unlock_file (scorefile, lockstate);
......
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