unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#32992: 27.0.50; Malfunctioning Cursor display
@ 2018-10-08 18:45 Mauro Aranda
  2018-10-08 20:11 ` Eli Zaretskii
  0 siblings, 1 reply; 7+ messages in thread
From: Mauro Aranda @ 2018-10-08 18:45 UTC (permalink / raw)
  To: 32992

Hello.

This happens to me with the latest master :

Start emacs: emacs -Q
Since start I cannot see the cursor blinking.
If I type something: a or C-b, for example, then the cursor stops
being displayed
immediately and I can't see where point is anymore.
If I type: C-x b I can see the cursor as a hollow box, like expected,
but when I select the window (typing C-g, for example), cursor
disappears again.

There is no problem when running `emacs -nw'.


In GNU Emacs 27.0.50 (build 1, i686-pc-linux-gnu, GTK+ Version 3.18.9)
 of 2018-10-08 built on the-blackbeard
Repository revision: a0605d96187bc4103a982cededcd12e2628aba66
Windowing system distributor 'The X.Org Foundation', version 11.0.11906000
System Description: Ubuntu 16.04.5 LTS

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS GLIB
NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM THREADS LCMS2 GMP

Important settings:
  value of $LANG: es_AR.UTF-8
  value of $XMODIFIERS:
  locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message rmc puny seq byte-opt gv
bytecomp byte-compile cconv dired dired-loaddefs format-spec rfc822 mml
easymenu mml-sec password-cache epa derived epg epg-config gnus-util
rmail rmail-loaddefs mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader cl-loaddefs cl-lib sendmail rfc2047
rfc2045 ietf-drums mm-util mail-prsvr mail-utils elec-pair time-date
mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel term/x-win x-win term/common-win x-dnd tool-bar
dnd fontset image regexp-opt fringe tabulated-list replace newcomment
text-mode elisp-mode lisp-mode prog-mode register page menu-bar
rfn-eshadow isearch timer select scroll-bar mouse jit-lock font-lock
syntax facemenu font-core term/tty-colors frame cl-generic cham georgian
utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean
japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european
ethiopic indian cyrillic chinese composite charscript charprop
case-table epa-hook jka-cmpr-hook help simple abbrev obarray minibuffer
cl-preloaded nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote threads dbusbind
inotify lcms2 dynamic-setting system-font-setting font-render-setting
move-toolbar gtk x-toolkit x multi-tty make-network-process emacs)

Memory information:
((conses 8 94463 8670)
 (symbols 24 20134 1)
 (strings 16 28346 2587)
 (string-bytes 1 750579)
 (vectors 8 14254)
 (vector-slots 4 510532 11266)
 (floats 8 47 70)
 (intervals 28 202 4)
 (buffers 528 11)
 (heap 1024 17240 873))





^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#32992: 27.0.50; Malfunctioning Cursor display
  2018-10-08 18:45 bug#32992: 27.0.50; Malfunctioning Cursor display Mauro Aranda
@ 2018-10-08 20:11 ` Eli Zaretskii
  2018-10-08 20:45   ` Mauro Aranda
  0 siblings, 1 reply; 7+ messages in thread
From: Eli Zaretskii @ 2018-10-08 20:11 UTC (permalink / raw)
  To: Mauro Aranda; +Cc: 32992

> From: Mauro Aranda <maurooaranda@gmail.com>
> Date: Mon, 8 Oct 2018 15:45:59 -0300
> 
> This happens to me with the latest master :
> 
> Start emacs: emacs -Q
> Since start I cannot see the cursor blinking.
> If I type something: a or C-b, for example, then the cursor stops
> being displayed
> immediately and I can't see where point is anymore.
> If I type: C-x b I can see the cursor as a hollow box, like expected,
> but when I select the window (typing C-g, for example), cursor
> disappears again.

Not reproducible here (but I'm not on GNU/Linux).

Could this be the result of recent changes in time-related functions?
Can you try bisecting?

Thanks.





^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#32992: 27.0.50; Malfunctioning Cursor display
  2018-10-08 20:11 ` Eli Zaretskii
@ 2018-10-08 20:45   ` Mauro Aranda
  2018-10-09 15:12     ` Eli Zaretskii
  0 siblings, 1 reply; 7+ messages in thread
From: Mauro Aranda @ 2018-10-08 20:45 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: 32992

2018-10-08 17:11 GMT-03:00, Eli Zaretskii <eliz@gnu.org>:
>> From: Mauro Aranda <maurooaranda@gmail.com>
>> Date: Mon, 8 Oct 2018 15:45:59 -0300
>>
>> This happens to me with the latest master :
>>
>> Start emacs: emacs -Q
>> Since start I cannot see the cursor blinking.
>> If I type something: a or C-b, for example, then the cursor stops
>> being displayed
>> immediately and I can't see where point is anymore.
>> If I type: C-x b I can see the cursor as a hollow box, like expected,
>> but when I select the window (typing C-g, for example), cursor
>> disappears again.
>
> Not reproducible here (but I'm not on GNU/Linux).
>
> Could this be the result of recent changes in time-related functions?
> Can you try bisecting?
>
> Thanks.
>

I compiled commit 84f39d3... and the cursor displays correctly.
But with commit 93fe420... the problem arises.

I hope that information is useful.





^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#32992: 27.0.50; Malfunctioning Cursor display
  2018-10-08 20:45   ` Mauro Aranda
@ 2018-10-09 15:12     ` Eli Zaretskii
  2018-10-09 16:51       ` Paul Eggert
  0 siblings, 1 reply; 7+ messages in thread
From: Eli Zaretskii @ 2018-10-09 15:12 UTC (permalink / raw)
  To: Mauro Aranda, Paul Eggert; +Cc: 32992

> From: Mauro Aranda <maurooaranda@gmail.com>
> Date: Mon, 8 Oct 2018 17:45:25 -0300
> Cc: 32992@debbugs.gnu.org
> 
> > Could this be the result of recent changes in time-related functions?
> > Can you try bisecting?
> >
> > Thanks.
> >
> 
> I compiled commit 84f39d3... and the cursor displays correctly.
> But with commit 93fe420... the problem arises.
> 
> I hope that information is useful.

Yes, that pretty much points to the changeset I had in mind.

Paul, could you please take a look?  Thanks.





^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#32992: 27.0.50; Malfunctioning Cursor display
  2018-10-09 15:12     ` Eli Zaretskii
@ 2018-10-09 16:51       ` Paul Eggert
  2018-10-09 17:52         ` Eli Zaretskii
  0 siblings, 1 reply; 7+ messages in thread
From: Paul Eggert @ 2018-10-09 16:51 UTC (permalink / raw)
  To: Eli Zaretskii, Mauro Aranda; +Cc: 32992-done

[-- Attachment #1: Type: text/plain, Size: 200 bytes --]

Eli Zaretskii wrote:

> Paul, could you please take a look?  Thanks.

I took a look, reproduced the problem on 32-bit Ubuntu 18.04, and installed the 
attached patch. Thanks, Mauro, for reporting it.

[-- Attachment #2: 0001-Fix-malfunctioning-cursor-display-on-32-bit-Gtk.txt --]
[-- Type: text/plain, Size: 2216 bytes --]

From 6111d2b972db9df8251a5649b162f8404c632ee4 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Tue, 9 Oct 2018 09:47:28 -0700
Subject: [PATCH] Fix malfunctioning cursor display on 32-bit Gtk
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

This bug on 32-bit platforms was caused by the timespec_hz
definition going haywire because the C expression
FIXNUM_OVERFLOW_P (MOST_POSITIVE_FIXNUM) did not work in #if.
Eventually the numeric problem showed up as a malfunctioning
cursor (Bug#32992).  Fix the problem with MOST_POSITIVE_FIXNUM.
By the way, make_fixnum should check for integer overflow when
debugging; this would have made it easier to track this bug down.
But one fix at a time.
* src/lisp.h (INTTYPEBITS): Now a macro, so usable in #if.
(MOST_POSITIVE_FIXNUM): Mention it’s used in #if.
---
 src/lisp.h | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/src/lisp.h b/src/lisp.h
index ae329268dc..2c20b483ca 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -236,13 +236,15 @@ enum Lisp_Bits
     /* Number of bits in a Lisp_Object value, not counting the tag.  */
     VALBITS = EMACS_INT_WIDTH - GCTYPEBITS,
 
-    /* Number of bits in a Lisp fixnum tag.  */
-    INTTYPEBITS = GCTYPEBITS - 1,
-
     /* Number of bits in a Lisp fixnum value, not counting the tag.  */
     FIXNUM_BITS = VALBITS + 1
   };
 
+/* Number of bits in a Lisp fixnum tag; can be used in #if.  */
+DEFINE_GDB_SYMBOL_BEGIN (int, INTTYPEBITS)
+#define INTTYPEBITS (GCTYPEBITS - 1)
+DEFINE_GDB_SYMBOL_END (INTTYPEBITS)
+
 /* The maximum value that can be stored in a EMACS_INT, assuming all
    bits other than the type bits contribute to a nonnegative signed value.
    This can be used in #if, e.g., '#if USE_LSB_TAG' below expands to an
@@ -1034,7 +1036,7 @@ enum More_Lisp_Bits
    that cons.  */
 
 /* Largest and smallest representable fixnum values.  These are the C
-   values.  They are macros for use in static initializers.  */
+   values.  They are macros for use in #if and static initializers.  */
 #define MOST_POSITIVE_FIXNUM (EMACS_INT_MAX >> INTTYPEBITS)
 #define MOST_NEGATIVE_FIXNUM (-1 - MOST_POSITIVE_FIXNUM)
 
-- 
2.17.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* bug#32992: 27.0.50; Malfunctioning Cursor display
  2018-10-09 16:51       ` Paul Eggert
@ 2018-10-09 17:52         ` Eli Zaretskii
  2018-10-09 18:03           ` Paul Eggert
  0 siblings, 1 reply; 7+ messages in thread
From: Eli Zaretskii @ 2018-10-09 17:52 UTC (permalink / raw)
  To: Paul Eggert; +Cc: maurooaranda, 32992

> Cc: 32992-done@debbugs.gnu.org
> From: Paul Eggert <eggert@cs.ucla.edu>
> Date: Tue, 9 Oct 2018 09:51:29 -0700
> 
> I took a look, reproduced the problem on 32-bit Ubuntu 18.04, and installed the 
> attached patch. Thanks, Mauro, for reporting it.

Thanks.

> @@ -236,13 +236,15 @@ enum Lisp_Bits
>      /* Number of bits in a Lisp_Object value, not counting the tag.  */
>      VALBITS = EMACS_INT_WIDTH - GCTYPEBITS,
>  
> -    /* Number of bits in a Lisp fixnum tag.  */
> -    INTTYPEBITS = GCTYPEBITS - 1,
> -

INTTYPEBITS is used in .gdbinit, so this change will probably cause
xint to barf unless Emacs was built with -g3, is that right?





^ permalink raw reply	[flat|nested] 7+ messages in thread

* bug#32992: 27.0.50; Malfunctioning Cursor display
  2018-10-09 17:52         ` Eli Zaretskii
@ 2018-10-09 18:03           ` Paul Eggert
  0 siblings, 0 replies; 7+ messages in thread
From: Paul Eggert @ 2018-10-09 18:03 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: maurooaranda, 32992

Eli Zaretskii wrote:
> INTTYPEBITS is used in .gdbinit, so this change will probably cause
> xint to barf unless Emacs was built with -g3, is that right?

It should still work, since the patch uses DEFINE_GDB_SYMBOL_BEGIN.





^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2018-10-09 18:03 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-10-08 18:45 bug#32992: 27.0.50; Malfunctioning Cursor display Mauro Aranda
2018-10-08 20:11 ` Eli Zaretskii
2018-10-08 20:45   ` Mauro Aranda
2018-10-09 15:12     ` Eli Zaretskii
2018-10-09 16:51       ` Paul Eggert
2018-10-09 17:52         ` Eli Zaretskii
2018-10-09 18:03           ` Paul Eggert

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).