Package: libxaw6
Version: 1:1.0.1-5

Xaw's Tips.c registers and releases timers for tooltips to show,
but does not remember a timer already triggered. Thus it releases
timers no longer belonging to it but to other users of Xt Timeouts
within the same program. (This even happens very often, as Xt reuses
old TimeEventRecs, so the next one adding a timeout will get exactly
this number.)

diff -r -u libxaw-1.0.1.orig/src/Tip.c libxaw-1.0.1/src/Tip.c
--- libxaw-1.0.1.orig/src/Tip.c 2006-08-18 16:07:24.086733000 +0200
+++ libxaw-1.0.1/src/Tip.c      2006-08-18 16:08:02.513875540 +0200
@@ -564,6 +564,7 @@
     info->tip->tip.label = NULL;
     info->tip->tip.international = False;
     info->tip->tip.encoding = 0;
+    info->tip->tip.timer = 0;
     XtSetArg(args[0], XtNtip, &info->tip->tip.label);
     XtSetArg(args[1], XtNinternational, &info->tip->tip.international);
     XtSetArg(args[2], XtNencoding, &info->tip->tip.encoding);

This is the correct bahaviour, as section 7.1.3 of Intrinsic.txt.gz
says:

| Note that timeouts are automatically removed once they trig-
| ger.

src/Repeater.c correctly forgets the timer when it is triggered, but
src/StripChart.c does very strange things with Xt Timeouts, which
very likely will have similar problems.

Hochachtungsvoll,
        Bernhard R. Link


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to