View Issue Details

IDProjectCategoryView StatusLast Update
0019819LazarusIDEpublic2011-12-03 14:20
ReporterBart Broersma Assigned ToJuha Manninen  
Status closedResolutionfixed 
Platformi386OSSuse Linux 
Product Version0.9.30.1 (SVN) 
Fixed in Version0.9.30.1 (SVN) 
Summary0019819: IDE crash on File -> New .. -> Inherited Project Component
DescriptionLazarus crashes when trying to create a visual inherited form (not sure if that is the correct term)
Steps To ReproduceSimple Lazarus application with 2 forms: Form1 (main form) and Form2

Menu -> File -> New ... -> Inherited Project Component

- I cannot select any item in the listbox (?) on the right
  (it has 2 items: Form1 and Form2)

Click on Ok button -> Sigsev
Additional InformationRunning Lazarus from gdb:

bart@simenon:~/svnroot/lazarus> gdb lazarus
GNU gdb 6.3
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i586-suse-linux"...Using host libthread_db library "/lib/tls/".

(gdb) set args --pcp=/home/bart/.svnlaz
(gdb) run
Starting program: /home/bart/svnroot/lazarus/lazarus --pcp=/home/bart/.svnlaz
[Thread debugging using libthread_db enabled]
[New Thread 1083227744 (LWP 15746)]
SetPrimaryConfigPath NewValue="/home/bart/.svnlaz" -> "/home/bart/.svnlaz"

[skipped some pango warnings]

TMainIDE.DoLoadLFM Creating designer for hidden component of /home/bart/LazarusProjecten/InheritedForm/u_form2.pp
TMainIDE.DoOpenProjectFile Form2:TForm2 TDesigner

(lazarus:15746): Gtk-CRITICAL **: gtk_tree_view_set_cursor_on_cell: assertion `path != NULL' failed

(lazarus:15746): Gtk-CRITICAL **: gtk_tree_view_set_cursor_on_cell: assertion `path != NULL' failed

(lazarus:15746): Gtk-CRITICAL **: gtk_widget_get_parent_window: assertion `widget->parent != NULL' failed

(lazarus:15746): Gtk-CRITICAL **: gtk_widget_get_parent_window: assertion `widget->parent != NULL' failed

(lazarus:15746): Gtk-CRITICAL **: gtk_widget_get_parent_window: assertion `widget->parent != NULL' failed

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1083227744 (LWP 15746)]
    this=0x4094cb40) at newdialog.pas:212
212 AnUnitInfo:=TUnitInfo(AInheritedNode.Data);
(gdb) c
TApplication.HandleException Access violation
  Stack trace:
  $0856B519 TNEWOTHERDIALOG__OKBUTTONCLICK, line 212 of newdialog.pas
  $08204293 TCONTROL__CLICK, line 2286 of ./include/
  $08222F5F TBUTTONCONTROL__CLICK, line 62 of ./include/
  $0822353F TCUSTOMBUTTON__CLICK, line 174 of ./include/
  $08216818 TCUSTOMBITBTN__CLICK, line 57 of ./include/
  $08222E7A TBUTTONCONTROL__WMDEFAULTCLICKED, line 26 of ./include/
  $081F9DE2 TWINCONTROL__WNDPROC, line 5243 of ./include/
  $082AD7E1 DELIVERMESSAGE, line 111 of lclmessageglue.pas
  $082B790B GTK2WSBUTTON_CLICKED, line 2233 of ./gtk2/gtk2wsstdctrls.pp
WARNING: TLCLComponent.Destroy with LCLRefCount>0. Hint: Maybe the component is processing an event?
[TMainIDE.Destroy] A
[TMainIDE.Destroy] B -> inherited Destroy... TMainIDE
[TMainIDE.Destroy] END
[TGtk2WidgetSet.Destroy] WARNING: There are 1 unreleased DCs, a detailed dump follows:
[TGtk2WidgetSet.Destroy] DCs: 40A97470
[TGtk2WidgetSet.Destroy] WARNING: There are 23 unreleased GDIObjects, a detailed dump follows:
[TGtk2WidgetSet.Destroy] GDIOs: 432D2B20 432D2AC0 40AD43A0 432CC160 43285EE0 433432C0 432CC520
[TGtk2WidgetSet.Destroy] gdiBitmap: 20
[TGtk2WidgetSet.Destroy] gdiBrush: 1
[TGtk2WidgetSet.Destroy] gdiFont: 1
[TGtk2WidgetSet.Destroy] gdiPen: 1

Program exited normally.
(gdb) bt
No stack.

I didn't test under Windows yet.
TagsNo tags attached.
Fixed in Revisionr33595
WidgetsetGTK 2
Attached Files


child of 0019820 closedZeljan Rikalo TListView: cannot select items (gtk2 2.8.3-4) 


Bart Broersma

2011-07-27 13:49

developer   ~0050207

File: ide/newdialog.pas

procedure TNewOtherDialog.OKButtonClick(Sender: TObject);

appr line 211

        AInheritedNode := InheritableComponentsListView.Selected;
        // load the ancestor component
At this point:

InheritableComponentsListView.Items.Count = 2
InheritableComponentsListView.ItemIndex = -1
AInheritedNode = nil

And so this will cause a sigsev


Further investigation shows that the ListView is the problem, it will never let me select any item.
I'll post this in a seperate bugreport.

However I still think that a sanity check to see if AInheritedNode is not nil should be applied.

Juha Manninen

2011-11-17 21:17

developer   ~0054174

Added the sanity check.

Bart Broersma

2011-12-03 14:20

developer   ~0054665

Fixed in r33595.

Issue History

Date Modified Username Field Change
2011-07-27 12:48 Bart Broersma New Issue
2011-07-27 12:48 Bart Broersma LazTarget => -
2011-07-27 12:48 Bart Broersma Widgetset => GTK 2
2011-07-27 13:49 Bart Broersma Note Added: 0050207
2011-07-27 14:17 Bart Broersma Relationship added child of 0019820
2011-07-27 21:03 Mattias Gaertner Status new => assigned
2011-07-27 21:03 Mattias Gaertner Assigned To => Mattias Gaertner
2011-11-17 21:10 Juha Manninen Assigned To Mattias Gaertner => Juha Manninen
2011-11-17 21:17 Juha Manninen Fixed in Revision => r33595
2011-11-17 21:17 Juha Manninen Status assigned => resolved
2011-11-17 21:17 Juha Manninen Resolution open => fixed
2011-11-17 21:17 Juha Manninen Note Added: 0054174
2011-12-03 14:20 Bart Broersma Status resolved => closed
2011-12-03 14:20 Bart Broersma Note Added: 0054665
2011-12-03 14:20 Bart Broersma Fixed in Version => (SVN)