]> git.eshelyaron.com Git - emacs.git/commitdiff
Pacify x86 GCC 9 in tab bar code
authorPaul Eggert <eggert@cs.ucla.edu>
Fri, 18 Oct 2019 22:33:13 +0000 (15:33 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Fri, 18 Oct 2019 22:35:15 +0000 (15:35 -0700)
* src/xdisp.c (tty_get_tab_bar_item): Simplify a bit.  This
pacifies --enable-gcc-warnings with x86 GCC 9.2.1 20190827
(Red Hat 9.2.1-1) when combined with -fsanitize=undefined.

src/xdisp.c

index 457fa4343f1c40e3cff5f6167725c7fd5170e5ec..0d8f9a1edd51ee05e1aa87b424c0a54d0e3de5ea 100644 (file)
@@ -13419,26 +13419,22 @@ static Lisp_Object
 tty_get_tab_bar_item (struct frame *f, int x, int *idx, ptrdiff_t *end)
 {
   ptrdiff_t clen = 0;
-  Lisp_Object caption;
 
-  int i, j;
-  for (i = 0, j = 0; i < f->n_tab_bar_items; i++, j += TAB_BAR_ITEM_NSLOTS)
+  for (int i = 0; i < f->n_tab_bar_items; i++)
     {
-      caption = AREF (f->tab_bar_items, j + TAB_BAR_ITEM_CAPTION);
+      Lisp_Object caption = AREF (f->tab_bar_items, (i * TAB_BAR_ITEM_NSLOTS
+                                                    + TAB_BAR_ITEM_CAPTION));
       if (NILP (caption))
        return Qnil;
       clen += SCHARS (caption);
       if (x < clen)
-       break;
-    }
-  if (i < f->n_tab_bar_items)
-    {
-      *idx = i;
-      *end = clen;
-      return caption;
+       {
+         *idx = i;
+         *end = clen;
+         return caption;
+       }
     }
-  else
-    return Qnil;
+  return Qnil;
 }
 
 /* Handle a mouse click at X/Y on the tab bar of TTY frame F.  If the