diff --git a/src/ChangeLog b/src/ChangeLog index 4994aaa9fa8..1d3d4d65174 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,7 @@ 2011-03-23 Paul Eggert + * cm.c (calccost): Turn while-do into do-while, for clarity. + Fix more problems found by GCC 4.5.2's static checks. * coding.c (encode_coding_raw_text): Avoid unnecessary test diff --git a/src/cm.c b/src/cm.c index 6379955b48c..42f855f1694 100644 --- a/src/cm.c +++ b/src/cm.c @@ -214,8 +214,9 @@ calccost (struct tty_display_info *tty, } totalcost = c * deltay; if (doit) - while (--deltay >= 0) + do emacs_tputs (tty, p, 1, cmputc); + while (0 < --deltay); x: if ((deltax = dstx - srcx) == 0) goto done; @@ -296,8 +297,9 @@ fail: } totalcost += c * deltax; if (doit) - while (--deltax >= 0) + do emacs_tputs (tty, p, 1, cmputc); + while (0 < --deltax); done: return totalcost; }