]> code.delx.au - gnu-emacs/commitdiff
Pacify GCC -Wmaybe-uninitialized in xdisp.c
authorPaul Eggert <eggert@cs.ucla.edu>
Mon, 21 Sep 2015 14:45:31 +0000 (07:45 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Mon, 21 Sep 2015 14:45:53 +0000 (07:45 -0700)
* src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
charpos.  The loop should always execute at least once anyway.

src/xdisp.c

index 34b5ca3cced5e9a33a48a5bba20cff0cb7d09883..0d0bc91efd9f6f2138f48419f9fd515d87f53d1f 100644 (file)
@@ -4024,13 +4024,16 @@ face_before_or_after_it_pos (struct it *it, bool before_p)
              SAVE_IT (it_copy, *it, it_copy_data);
              IT_STRING_CHARPOS (it_copy) = 0;
              bidi_init_it (0, 0, FRAME_WINDOW_P (it_copy.f), &it_copy.bidi_it);
-             while (IT_STRING_CHARPOS (it_copy) != IT_STRING_CHARPOS (*it))
+
+             do
                {
                  charpos = IT_STRING_CHARPOS (it_copy);
                  if (charpos >= SCHARS (it->string))
                    break;
                  bidi_move_to_visually_next (&it_copy.bidi_it);
                }
+             while (IT_STRING_CHARPOS (it_copy) != IT_STRING_CHARPOS (*it));
+
              RESTORE_IT (it, it, it_copy_data);
            }
          else