[lazarus] Lazarus freezes XFree86

Mattias Gaertner nc-gaertnma at netcologne.de
Tue Oct 15 14:10:36 EDT 2002

On Mon, 14 Oct 2002 19:34:48 -0400
"Andrew Johnson" <aj_genius at hotmail.com> wrote:

> On Mon, 14 Oct 2002 20:19:14 +0200
> "Michal Bukovjan" <bukovjan at mbox.dkm.cz> wrote :
> >Mattias Gaertner wrote:
> >>Hi,
> >>
> >>I just tried lazarus on redhat 8.0 and ran into a newbie trap.
> >>Hints can freeze your XFree86.
> >>If you encounter such freezes then plz deactivate all hints in the IDE:
> >>
> >>Editor Options -> General -> Show Scroll Hint
> >>Editor Options -> CodeTools -> Tooltip symbol Tools
> >>Environment Options -> Form editor -> Miscellaneous -> Show component 
> >>captions
> >>Environment Options -> Form editor -> Miscellaneous -> Show editor hints
> >>Environment Options -> Desktop -> Hints for component palette
> >>Environment Options -> Desktop -> Hints for main speed buttons
> >>
> >>The last two are sometimes hidden, so plz enlarge the dialog.
> >>
> >I ran into the same issue when I tried to simplify the 
> > >showing/hiding/visibility/positioning logic (make it simpler >and more 
> >Kylix way).
> >All was well and working, except that I noticed that when the same hint 
> >window is showing for *second* time, it will seemingly freeze Lazarus - you 
> >must be then quick to switch to a text console and kill Lazarus to save 
> >your X session and a potentional reboot. If you are not quick enough, it 
> >will freeze your X.
> >My guess it is a result of IMHO somewhat complicated visibility handling.

You are right. It is complicated, but it is the result of mapping the complicated VCL handling to gtk in a window manager unspecific way and without big speed loss.

> >After many hours looking at it, I decided to scrap my changes and leave it 
> >as it is :-(
> >If you manage to solve this, let us know! I just could not find the error 
> >:-(

The error was TTimer and its implementation in the gtk-interface. 
I also found out, that a single gtk_timeout_remove with the wrong handle freezes X, so I added some consistency checks to avoid freezes even in case of pioneer code.
So, the timers are fixed, and I hope the freezes too.

But there are still some bugs with THintWindow. If one is shown, it gives some gtk warnings on destroying the widget. But I'm currently not interested in hints, so I will leave this for others. I will try to fix the other rh8.0 bugs.
IMO the whole hint code in the IDE is not very nice. There should be some components in the LCL to automatically handle such things.

> This actually happens in Redhat 7.3 too. But for me I can get rid of it just 
> by calling to a keyboard shortcut, aka ctrl-F, and cancelling out of the 
> form. And it doesn't usually freeze up everything, though that has happened 
> to me on a few cases. It happens often enough for me, that I figured it was 
> a known bug. 

If you see such things, then plz add it to the bugtracker or the FAQ.
I'm not doing such things, because otherwise I would flood the bugtracker. So many bugs and so less time ...

> I may see what I can figure out myself.


More information about the Lazarus mailing list