Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2002-04

New Bugs

7 messages · 3 people ·

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Mattias Gaertner
to Jens Arm: Hi Some new Bugs: ================ 1. Project Options / Forms: If you send a autocreate…
Show quoted text 7 lines
Some new Bugs: ================ 1. Project Options / Forms: If you send a autocreate forms to the available Forms. The code gets updated correctly, but if you switch the form back to auto, the source isn't updated.

fixed.

Show quoted text 30 lines
================ 2. Can not start LAZARUS (Floating-Point (Invalid Operation)): If I start Lazarus I can see the splash, then only the window-frame of the Sourceeditor, but nothing more :( I have looked a bit into the code and I have found the position of the error. It is in the function GTKVScrollCB in gtkcallback.inc. Perhaps the same can occur in the second scrollbar function!?! The Floatingpoint-Exception is generated by a line around 1300. Which is PageI := Round(Page_Increment). I have looked, what is in Page_Increment and it is a very big number (4.294967296E+09), which looks like causing the problem. If I change the round to trunc it works. I don't know, if then the result is the wanted? I have such a problem with floating point in another program, too. Could it be that there are some bugs in the FPC-Floating Point code?? This is the output while starting: lazarus]$ ./lazarus [...] STOPPOK: [TGtkObject.SetText] Possible superfluous use of SetText, use SetLabel instead! [TMainIDE.Destroy] A [TMainIDE.Destroy] B -> inherited Destroy... [TMainIDE.Destroy] END An unhandled exception occurred at 0x081D77AD : Invalid floating point operation 0x081D77AD 0x402EC334 main, line 257 of graphics.pp 0x00010001

Shane has reported the same error. I can only guess, what the bug is, since I there are not much hints. Although it's true, there are some strange things in floating point and fpc. I have added some bound checks for OI and synedit scrollbars. Does this help?

================ 3. The 'close all' menu item should close the open Project, too. Like in Kylix/Delphi.

For lazarus a project is not neccessarily a program, but rather a session. The project info file .lpi stores all the information to restore the current state, when u restart lazarus or reopen the project. When u really want to close the project, then u don't want sessions. Why that?

================ 4. In the 'remove from project'-Dialog nothing in shown.

Hmm. Seems to work for me. It shows no units, if there is no project unit left except the main source. 'View Units' shows the same but also the main source. Can u send me an example or a hint how to reproduce this? Does Add to project work?

Mattias

Reply by email

Marc Weustink
to Jens Arm: Why are the events going through all the controls and not only to the one on the top ? If…

+ From: Jens Arm
+ Sent: Sunday, 07 April, 2002 14:31
+ To:
+ Subject: Re: [lazarus] New Bugs
+
+
+ > The evil mouse coords bugs. -sigh-. I hoped that someone
+ >_with_ gtk knowlegde would fix them eventually. But it seems,
+ >that sooner or later I must try.
+
+
+ Why are the events going through all the controls and not
+ only to the one on the top ?
+ If the event only goes to the control on top this problem
+ would gone away or is it needed that the events go through all ?

It is not needed. It is either a feature from GTK or we are doing something wrong, but each widget receives the messages. A bit annoying.

Marc

Reply by email

Mattias Gaertner
to Jens Arm: Hi Some new Bugs: ================ 1. Project Options / Forms: If you send a autocreate…
Show quoted text 7 lines
> > ================ > > > > 3. The 'close all' menu item should close the open Project, too. Like in Kylix/Delphi. > > For lazarus a project is not neccessarily a program, but rather a session. The project info file .lpi stores all the information to restore the current state, when u restart lazarus or reopen the project. When u really want to close the project, then u don't want sessions. Why that? Session?? What do you mean?

We need a help system.

A project under laz is the sources plus the project specific settings, like open files, breakpoints, bookmarks, cursors, compiler settings, ... . So, if u switch to another project or restart laz and then reopen the first project, you can just go on. Delphi forgets breakpoints and cursor positions between sessions, which I dislike about it. Since this info is stored in the .lpi file together with the project, you can also take your project to another computer and go on. Under Delphi I often had the thought "where was I?". But reopening an old project under laz and seeing my cursor at the method I last edited, this thought has vanished. This is a feature I don't want to miss.
Closing a project without reopening a new one, would mean, that laz can't store your settings.

Show quoted text 10 lines
> > ================ > > > > 4. In the 'remove from project'-Dialog nothing in shown. > > Hmm. Seems to work for me. It shows no units, if there is no project unit left except the main source. 'View Units' shows the same but also the main source. > Can u send me an example or a hint how to reproduce this? > Does Add to project work? > I started Laz created some forms and want to remove these again, but nothing is shown in the dialog.

fixed.

(if you click into the componentpalette (the bug with the Tabs and the icons in the left corner)

The evil mouse coords bugs. -sigh-. I hoped that someone _with_ gtk knowlegde would fix them eventually. But it seems, that sooner or later I must try.

Mattias

Reply by email

Jens Arm
to Jens Arm: Hi Some new Bugs: ================ 1. Project Options / Forms: If you send a autocreate…
The evil mouse coords bugs. -sigh-. I hoped that someone _with_ gtk knowlegde would fix them eventually. But it seems, that sooner or later I must try.

Why are the events going through all the controls and not only to the one on the top ? If the event only goes to the control on top this problem would gone away or is it needed that the events go through all ?

Jens

Reply by email

Jens Arm

Hi

Some new Bugs:

================

1. Project Options / Forms: If you send a autocreate forms to the available Forms. The code gets updated correctly, but if you switch the form back to auto, the source isn't updated.

================

2. Can not start LAZARUS (Floating-Point (Invalid Operation)): If I start Lazarus I can see the splash, then only the window-frame of the Sourceeditor, but nothing more :(

   I have looked a bit into the code and I have found the position of
   the error. It is in the function GTKVScrollCB in gtkcallback.inc.
   Perhaps the same can occur in the second scrollbar function!?!
   The Floatingpoint-Exception is generated by a line around 1300. Which is
   PageI := Round(Page_Increment). I have looked, what is in Page_Increment
   and it is a very big number (4.294967296E+09), which looks like
   causing the problem. If I change the round to trunc it works. I don't know,
   if then the result is the wanted? I have such a problem with floating point
   in another program, too. Could it be that there are some bugs in the FPC-Floating
   Point code??
   This is the output while starting:

lazarus]$ ./lazarus
Note: miscellaneous options file not found - using defaults Note: converting old miscellaneous options ...
Note: codetools config file not found - using defaults Note: loading old codetools options file: /home/laser/.lazarus/codetoolsoptions.xml Form Stream Signature=TPF0
Form Stream Signature=TPF0
TMainIDE.DoNewProject A
TMainIDE.DoNewEditorUnit A NewFilename=
TPascalParserTool.BuildTree B OnlyInterfaceNeeded=TRUE unit1.pas TPascalParserTool.BuildTree B OnlyInterfaceNeeded=FALSE project1.lpr [TCustomFormEditor.CreateComponent] Class='TFORM'
[TJITForms] AddNewJITForm
NewFormName is Form1, NewClassName is TForm1
[TJITForms.RenameClass] OldName='TJITForm' NewName='TForm1' [TJITForms.RenameClass] OldName='TForm1' NewName='TForm1' TPascalParserTool.BuildTree B OnlyInterfaceNeeded=FALSE project1.lpr (gtkwinapiwindow.pp) GTKAPIWidget_new, ToDo: check parameters, gtk-Critical (gtkwinapiwindow.pp) GTKAPIWidget_Init B check this:

Gtk-CRITICAL **: file gtkrange.c: line 251 (gtk_range_get_adjustment): assertion `range != NULL' failed.

Gtk-CRITICAL **: file gtkrange.c: line 251 (gtk_range_get_adjustment): assertion `range != NULL' failed. GTKAPIWidget_Init END

Gtk-CRITICAL **: file gtkrange.c: line 251 (gtk_range_get_adjustment): assertion `range != NULL' failed. GTKAPIWidget_new END
STOPPOK: [TGtkObject.SetText] Possible superfluous use of SetText, use SetLabel instead! [TMainIDE.Destroy] A
[TMainIDE.Destroy] B -> inherited Destroy...
[TMainIDE.Destroy] END
An unhandled exception occurred at 0x081D77AD :
Invalid floating point operation
0x081D77AD
0x402EC334 main, line 257 of graphics.pp
0x00010001

forms.pp - finalization section
[TgtkObject.Destroy] WARNING: There are 2 unreleased DCs, a detailed dump follows: [TgtkObject.Destroy] DCs: 082DABF4 082DAA44
[TgtkObject.Destroy] WARNING: There are 15 unreleased GDIObjects, a detailed dump follows: [TgtkObject.Destroy] GDIOs: 082DAD24 082DACB4 082DAC44 082DAB84 082DAB34 082DAAE4 082DAA94 [TgtkObject.Destroy] gdiBitmap: 1
[TgtkObject.Destroy] gdiBrush: 10
[TgtkObject.Destroy] gdiFont: 2
[TgtkObject.Destroy] gdiPen: 2

================

3. The 'close all' menu item should close the open Project, too. Like in Kylix/Delphi.

================

4. In the 'remove from project'-Dialog nothing in shown.

================

Jens

Reply by email

Jens Arm
to Jens Arm
Show quoted text 33 lines
> ================ > > 2. Can not start LAZARUS (Floating-Point (Invalid Operation)): > If I start Lazarus I can see the splash, then only the window-frame > of the Sourceeditor, but nothing more :( > > I have looked a bit into the code and I have found the position of > the error. It is in the function GTKVScrollCB in gtkcallback.inc. > Perhaps the same can occur in the second scrollbar function!?! > The Floatingpoint-Exception is generated by a line around 1300. Which is > PageI := Round(Page_Increment). I have looked, what is in Page_Increment > and it is a very big number (4.294967296E+09), which looks like > causing the problem. If I change the round to trunc it works. I don't know, > if then the result is the wanted? I have such a problem with floating point > in another program, too. Could it be that there are some bugs in the FPC-Floating > Point code?? > > This is the output while starting: > > lazarus]$ ./lazarus > [...] > STOPPOK: [TGtkObject.SetText] Possible superfluous use of SetText, use SetLabel instead! > [TMainIDE.Destroy] A > [TMainIDE.Destroy] B -> inherited Destroy... > [TMainIDE.Destroy] END > An unhandled exception occurred at 0x081D77AD : > Invalid floating point operation > 0x081D77AD > 0x402EC334 main, line 257 of graphics.pp > 0x00010001 Shane has reported the same error. I can only guess, what the bug is, since I there are not much hints. Although it's true, there are some strange things in floating point and fpc. I have added some bound checks for OI and synedit scrollbars. Does this help?

I test this tomorrow

Show quoted text 7 lines
> ================ > > 3. The 'close all' menu item should close the open Project, too. Like in Kylix/Delphi. For lazarus a project is not neccessarily a program, but rather a session. The project info file .lpi stores all the information to restore the current state, when u restart lazarus or reopen the project. When u really want to close the project, then u don't want sessions. Why that?

Session?? What do you mean?

Show quoted text 10 lines
> ================ > > 4. In the 'remove from project'-Dialog nothing in shown. Hmm. Seems to work for me. It shows no units, if there is no project unit left except the main source. 'View Units' shows the same but also the main source. Can u send me an example or a hint how to reproduce this? Does Add to project work?

I started Laz created some forms and want to remove these again, but nothing is shown in the dialog. (You must remove the forms, which are created, if you click into the componentpalette (the bug with the Tabs and the icons in the left corner)

Jens

Reply by email