Subject: bug#65147: closed (Re: bug#65147: 30.0.50; timer--activate: Invalid or uninitialized timer)

From: [email-masked] (GNU bug Tracking System)
Date: Tue, 08 Aug 2023 12:37:02 +0000

Your bug report

#65147: 30.0.50; timer--activate: Invalid or uninitialized timer

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
65147: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=65147
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#65147: 30.0.50; timer--activate: Invalid or uninitialized timer
From: Eli Zaretskii <[email-masked]>
To: David Ponce <[email-masked]>
Cc: [email-masked]
Date: Tue, 08 Aug 2023 15:36:43 +0300
List-Id: <debbugs-submit.debbugs.gnu.org>

> Date: Tue, 8 Aug 2023 12:47:13 +0200
> From: David Ponce <[email-masked]>
> 
> On current master I constantly receive messages "timer--activate:
> Invalid or uninitialized timer" as soon as a tooltip is requested to be
> displayed, for example by just hovering tool-bar items with mouse.
> 
> After digging into the issue, I found that, in function
> `tooltip-start-delayed-tip', call to `run-with-timer' is missing the
> REPEAT argument.
> 
> The attached a patch that fixed the issue for me.

Thanks, installed on master, and closing the bug.

Subject: 30.0.50; timer--activate: Invalid or uninitialized timer
From: David Ponce <[email-masked]>
To: [email-masked]
Date: Tue, 8 Aug 2023 12:47:13 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello,

On current master I constantly receive messages "timer--activate:
Invalid or uninitialized timer" as soon as a tooltip is requested to be
displayed, for example by just hovering tool-bar items with mouse.

After digging into the issue, I found that, in function
`tooltip-start-delayed-tip', call to `run-with-timer' is missing the
REPEAT argument.

The attached a patch that fixed the issue for me.

Thanks!

In GNU Emacs 30.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version
  3.24.38, cairo version 1.17.8) of 2023-08-08
Repository revision: eeda9eff1aa1ad973851d6589c5bcf6020a090e8
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12014000
System Description: Fedora Linux 38 (KDE Plasma)

Configured using:
  'configure --prefix=/home/dponce --with-cairo --with-xwidget
  PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON
LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NOTIFY
INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS TREE_SITTER WEBP X11 XDBE XIM XINPUT2 XPM GTK3 ZLIB

Important settings:
   value of $LC_TIME: fr_FR.utf8
   value of $LANG: fr_FR.UTF-8
   locale-coding-system: utf-8-unix

Major mode: Messages

Minor modes in effect:
   tooltip-mode: t
   global-eldoc-mode: t
   show-paren-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
   buffer-read-only: t
   line-number-mode: t
   indent-tabs-mode: t
   transient-mark-mode: t
   auto-composition-mode: t
   auto-encryption-mode: t
   auto-compression-mode: t

Load-path shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message mailcap yank-media puny dired
dired-loaddefs ...)

Memory information:
((conses 16 39708 18141) (symbols 48 5207 0) (strings 32 13407 1256)
  (string-bytes 1 376858) (vectors 16 9418)
  (vector-slots 8 151276 16576) (floats 8 31 17) (intervals 56 174 67)
  (buffers 992 11))

diff --git a/lisp/tooltip.el b/lisp/tooltip.el
index 0881a7c7bf9..6f8a489e60c 100644
--- a/lisp/tooltip.el
+++ b/lisp/tooltip.el
@@ -200,7 +200,7 @@ tooltip-cancel-delayed-tip
 (defun tooltip-start-delayed-tip ()
   "Add a one-shot timeout to call function `tooltip-timeout'."
   (setq tooltip-timeout-id
-        (run-with-timer (tooltip-delay) 'tooltip-timeout nil)))
+        (run-with-timer (tooltip-delay) nil 'tooltip-timeout nil)))
 
 (defun tooltip-timeout (_object)
   "Function called when timer with id `tooltip-timeout-id' fires."