This seems totally bogus since you are freeing the next timeout without
removing it from the list. I think what you are actually achieving is not
freeing the timeout in question, so my guess is from the comment than having
been free'd XEmacs still trys to convert it to an event somehow. Do you get
the same effect if you comment out the Blocktype_free at the end of the
function?
andy
-----Original Message-----
From: xemacs-beta-admin(a)xemacs.org
[mailto:xemacs-beta-adminï¼ xemacs.org]On Behalf Of Sinisa Milivojevic
Sent: Tuesday, November 12, 2002 7:56 AM
To: xemacs-beta(a)xemacs.org
Cc: xemacs(a)xemacs.org; stephen(a)xemacs.org
Subject: A fix for the "freezing" problem .....
Hi!
XEmacs 21.4.* is freezing on me all of the time.
As I use it VERY extnesively, it freezes on me dozen times per day.
Some of the "freezes" last for hours or days. I have not experienced
days, because I have to work, so I just kill XEmacs and start it all
over ........
I also noted that if I run (and quit) gdb session (gdbsrc or similar)
XEmacs get's frozen very soon afterwards, so that it has to be killed.
I have done some debugging and made a very small change into 2.4.10
code.
It is now two whole day that have passed with 29 debugging sessions
and not a signel "freeze" !!!!!!!!!!!!!!!!!!
The fix I did seems trivial to me and even wrong, as it just discards
the last timeout. But I do not have any problems, what so ever.
So, your opinion is truly required !!!
This is a diff:
*** tmp/event-Xt.c Mon Nov 11 18:30:43 2002
--- src/event-Xt.c Mon Nov 11 18:31:09 2002
***************
*** 2100,2107 ****
/* Code duplication! */
if (id == completed_timeouts->id)
{
- timeout = completed_timeouts;
completed_timeouts = completed_timeouts->next;
}
else
{
--- 2100,2107 ----
/* Code duplication! */
if (id == completed_timeouts->id)
{
completed_timeouts = completed_timeouts->next;
+ timeout = completed_timeouts;
}
else
{
--
Regards,
__ ___ ___ ____ __
/ |/ /_ __/ __/ __ \/ / Mr. Sinisa Milivojevic <sinisa(a)mysql.com>
/ /|_/ / // /\ \/ /_/ / /__ MySQL AB, Fulltime Developer
/_/ /_/\_, /___/\___\_\___/ Larnaca, Cyprus
<___/
www.mysql.com