]> git.eshelyaron.com Git - emacs.git/commitdiff
Fix build with Lisp_Object type checking
authorPo Lu <luangruo@yahoo.com>
Wed, 31 May 2023 13:08:33 +0000 (21:08 +0800)
committerPo Lu <luangruo@yahoo.com>
Wed, 31 May 2023 13:08:33 +0000 (21:08 +0800)
* configure.ac: Pass through `--enable-check-lisp-object-type'
on Android.
* src/alloc.c (android_make_lisp_symbol):
* src/android.c:
* src/androidfns.c (android_set_no_focus_on_map)
(android_set_no_accept_focus):
* src/androidfont.c (androidfont_match, androidfont_open_font):
* src/androidselect.c (Fandroid_get_clipboard)
(Fandroid_get_clipboard_targets):
* src/keyboard.c (make_lispy_event, syms_of_keyboard):
* src/sfntfont.c (sfnt_enum_font_1, sfntfont_list_1):
* src/textconv.c (really_set_point_and_mark): Fix Lisp_Object
and integer screw-ups.

configure.ac
src/alloc.c
src/android.c
src/androidfns.c
src/androidfont.c
src/androidselect.c
src/keyboard.c
src/sfntfont.c
src/textconv.c

index 529639bfa177cc3af61633403f42f1a3a9ec5d31..aa5fcea732be4efda45c2667da261d86d18a8762 100644 (file)
@@ -1216,6 +1216,10 @@ package will likely install on older systems but crash on startup.])
   passthrough="$passthrough --with-pop=$with_pop"
   passthrough="$passthrough --with-harfbuzz=$with_harfbuzz"
 
+  # Now pass through some checking options.
+  emacs_val="--enable-check-lisp-object-type=$enable_check_lisp_object_type"
+  passthrough="$passthrough $emacs_val"
+
   AS_IF([test "x$with_mailutils" = "xyes"], [emacs_use_mailutils=yes])
   AC_SUBST([emacs_use_mailutils])
 
index 82b1c6b0355a0f61f3126106020e71d8e9e2ef27..c77bdc6372d033a67f48d60011facd4e29e64b3b 100644 (file)
@@ -6195,14 +6195,15 @@ static Lisp_Object
 android_make_lisp_symbol (struct Lisp_Symbol *sym)
 {
   intptr_t symoffset;
-  Lisp_Object a;
 
   symoffset = (intptr_t) sym;
   INT_SUBTRACT_WRAPV (symoffset, (intptr_t) &lispsym,
                      &symoffset);
 
-  a = TAG_PTR (Lisp_Symbol, symoffset);
-  return a;
+  {
+    Lisp_Object a = TAG_PTR (Lisp_Symbol, symoffset);
+    return a;
+  }
 }
 
 #endif
index 43122f73be1b9a1e462c95c5742caf59b90c1c5c..67590ae373d09d9207805cb8fb4c7468bdc5d819 100644 (file)
@@ -6495,8 +6495,8 @@ android_exception_check_1 (jobject object)
     }
 }
 
-/* Like android_exception_check_one, except it takes more than one
-   local reference argument.  */
+/* Like android_exception_check_1, except it takes more than one local
+   reference argument.  */
 
 void
 android_exception_check_2 (jobject object, jobject object1)
index 60b0549e7d142b1255109dc8ee68fc7c4f7d7b73..cc48de1a359066192c33d9b98471ee399eb897ef 100644 (file)
@@ -2885,7 +2885,7 @@ android_set_no_focus_on_map (struct frame *f, Lisp_Object new_value,
   if (!EQ (new_value, old_value))
     {
       android_set_dont_focus_on_map (FRAME_ANDROID_WINDOW (f),
-                                    new_value);
+                                    !NILP (new_value));
       FRAME_NO_FOCUS_ON_MAP (f) = !NILP (new_value);
     }
 }
@@ -2897,7 +2897,7 @@ android_set_no_accept_focus (struct frame *f, Lisp_Object new_value,
   if (!EQ (new_value, old_value))
     {
       android_set_dont_accept_focus (FRAME_ANDROID_WINDOW (f),
-                                    new_value);
+                                    !NILP (new_value));
       FRAME_NO_ACCEPT_FOCUS (f) = !NILP (new_value);
     }
 }
index 1a09027bca790142c0e91886f7295d4fc197700f..db2f94008f2307cabb3602a5fe35e5dec83205bb 100644 (file)
@@ -636,7 +636,7 @@ androidfont_match (struct frame *f, Lisp_Object font_spec)
   androidfont_from_java (result, entity);
   info->object = (*android_java_env)->NewGlobalRef (android_java_env,
                                                    (jobject) result);
-  android_exception_check_2 (entity, result);
+  android_exception_check_1 (result);
   ANDROID_DELETE_LOCAL_REF (result);
 
   return entity;
@@ -713,10 +713,6 @@ androidfont_open_font (struct frame *f, Lisp_Object font_entity,
        pixel_size = 12;
     }
 
-  __android_log_print (ANDROID_LOG_DEBUG, __func__,
-                      "opening font entity %"pI"x:%d",
-                      (EMACS_INT) font_entity, pixel_size);
-
   entity = (struct androidfont_entity *) XFONT_ENTITY (font_entity);
 
   block_input ();
index 54c712ca93b1efa69724b0468c964de33d44e433..d1f2ebb52f9ae8883602ed71cd71ae75af374efd 100644 (file)
@@ -208,7 +208,7 @@ Alternatively, return nil if the clipboard is empty.  */)
   ANDROID_DELETE_LOCAL_REF (bytes);
 
   /* Now decode the resulting string.  */
-  return code_convert_string_norecord (string, Qutf_8, Qnil);
+  return code_convert_string_norecord (string, Qutf_8, false);
 }
 
 DEFUN ("android-clipboard-exists-p", Fandroid_clipboard_exists_p,
@@ -304,7 +304,7 @@ data type available from the clipboard.  */)
 
       /* Decode the string.  */
       tem = make_unibyte_string ((char *) data, length1);
-      tem = code_convert_string_norecord (tem, Qutf_8, Qnil);
+      tem = code_convert_string_norecord (tem, Qutf_8, false);
       targets = Fcons (tem, targets);
 
       /* Delete the retrieved data.  */
index 364f26f421d60e490a2bb9dd86dd4b282900dd4e..ec9a6dc712a1523e1d9d6b5aa06fdd5cd0554b33 100644 (file)
@@ -6569,7 +6569,7 @@ make_lispy_event (struct input_event *event)
               menu bar event.  */
            menu_bar_touch_id = Qnil;
 
-           if (f->menu_bar_window)
+           if (!NILP (f->menu_bar_window))
              {
                x_y_to_hpos_vpos (XWINDOW (f->menu_bar_window), XFIXNUM (x),
                                  XFIXNUM (y), &column, &row, NULL, NULL,
@@ -13465,12 +13465,12 @@ This usually happens as a result of `select-active-regions'.  The hook
 is called with one argument, the string that was selected.  */);
   Vpost_select_region_hook = Qnil;
 
-  DEFVAR_LISP ("disable-inhibit-text-conversion",
+  DEFVAR_BOOL ("disable-inhibit-text-conversion",
               disable_inhibit_text_conversion,
     doc: /* Don't disable text conversion inside `read-key-sequence'.
 If non-nil, text conversion will continue to happen after a prefix
 key has been read inside `read-key-sequence'.  */);
-    disable_inhibit_text_conversion = false;
+  disable_inhibit_text_conversion = false;
 
   pdumper_do_now_and_after_load (syms_of_keyboard_for_pdumper);
 }
index 71399b890d2f5637a3ca6691ca0e1da9981fa312..826c830ece5c49f8e4c96f68122318d0669aee56 100644 (file)
@@ -991,7 +991,7 @@ sfnt_enum_font_1 (int fd, const char *file,
          style1 = sfnt_decode_instance_name (&fvar->instance[i],
                                              name);
 
-         if (!style1)
+         if (NILP (style1))
            continue;
 
          /* Now parse the style.  */
@@ -1520,8 +1520,8 @@ sfntfont_list_1 (struct sfnt_font_desc *desc, Lisp_Object spec,
 
          if (STRINGP (XCAR (XCAR (tail)))
              && STRINGP (XCDR (XCAR (tail)))
-             && Fstring_equal (SYMBOL_NAME (tem),
-                               XCAR (XCAR (tail))))
+             && !NILP (Fstring_equal (SYMBOL_NAME (tem),
+                                      XCAR (XCAR (tail)))))
            {
              /* Special family found.  */
              tem = Fintern (XCDR (XCAR (tail)), Qnil);
index 1530cc0ce320093fc557c8334d2dd4e46b634d79..a2c790d5374b7ac32101d667cdef111407325fd0 100644 (file)
@@ -1022,7 +1022,8 @@ really_set_point_and_mark (struct frame *f, ptrdiff_t point,
     /* Set the point.  */
     Fgoto_char (make_fixnum (point));
 
-  if (mark == point && BVAR (current_buffer, mark_active))
+  if (mark == point
+      && !NILP (BVAR (current_buffer, mark_active)))
     call0 (Qdeactivate_mark);
   else
     call1 (Qpush_mark, make_fixnum (mark));