IDE crashes with QT as widgetset and oxygen theme selected
Original Reporter info from Mantis: philmchakra
-
Reporter name: Phil Miller
Original Reporter info from Mantis: philmchakra
- Reporter name: Phil Miller
Description:
This might be related to issue #18648 (closed).
If you start lazarus with the default oxygen theme in Chakra GNU/Linux it crashes.
Changing to a different theme gets the IDE started.
For debuging I added Zeljan Rikalo's diff files to our lazarus pkg to write values of painter cliprect and clipping state into the console. Outputs below.
fpc-qtbindings are compiled with -mstackrealign since we use QT 4.7.3.
Additional information:
If you start lazarus with plastique it works:
[phil@chakra-pc ~]$ lazarus -style plastique
TMainIDE.ParseCmdLineOptions:
PrimaryConfigPath="/home/phil/.lazarus"
SecondaryConfigPath="/etc/lazarus"
NOTE: editor options config file not found - using defaults
NOTE: miscellaneous options file not found - using defaults
Hinweis: CodeTools-Konfigurationsdatei nicht gefunden - verwende Voreinstellungen
NOTE: help options config file not found - using defaults
TMainIDE.DoNewProject A
ClipRect IS NIL ! clip ? TRUE
ClipRegion l=0,t=0,r=35,b=22 Rect l=23,t=0,r=35,b=22
ClipRect IS NIL ! clip ? TRUE
ClipRegion l=0,t=0,r=35,b=22 Rect l=23,t=0,r=35,b=22
ClipRect IS NIL ! clip ? TRUE
ClipRegion l=0,t=0,r=35,b=22 Rect l=23,t=0,r=35,b=22
ClipRect IS NIL ! clip ? TRUE
ClipRegion l=0,t=0,r=35,b=22 Rect l=23,t=0,r=35,b=22
ClipRect IS NIL ! clip ? TRUE
ClipRegion l=0,t=0,r=35,b=22 Rect l=23,t=0,r=35,b=22
ClipRect IS NIL ! clip ? TRUE
ClipRegion l=0,t=0,r=35,b=22 Rect l=23,t=0,r=35,b=22
[TMainIDE.DoRunProject] A
TMainIDE.DoInitProjectRun A True 0
TMainIDE.DoInitProjectRun B
TProject.DoLoadStateFile Statefile not found: /tmp/project1.compiled
TMainIDE.CheckIfPackageNeedsCompilation No state file for Project
TCompiler.Compile WorkingDir="/tmp/" CompilerFilename="/usr/bin/fpc" CompilerParams=" -MObjFPC -Scghi -O1 -gl -vewnhi -l -Filib/i386-linux -Fu/usr/lib/lazarus/lcl/units/i386-linux/qt -Fu/usr/lib/lazarus/lcl/units/i386-linux -Fu/usr/lib/lazarus/packager/units/i386-linux -FUlib/i386-linux/ -dLCL -dLCLqt /tmp/project1.lpr"
[TCompiler.Compile] CmdLine="/usr/bin/fpc -B -MObjFPC -Scghi -O1 -gl -vewnhi -l -Filib/i386-linux -Fu/usr/lib/lazarus/lcl/units/i386-linux/qt -Fu/usr/lib/lazarus/lcl/units/i386-linux -Fu/usr/lib/lazarus/packager/units/i386-linux -FUlib/i386-linux/ -dLCL -dLCLqt /tmp/project1.lpr"
Hint: Start of reading config file /etc/fpc.cfg
Hint: End of reading config file /etc/fpc.cfg
Free Pascal Compiler version 2.4.4 [2011/07/21] for i386
Copyright (c) 1993-2010 by Florian Klaempfl
Target OS: Linux for i386
Compiling /tmp/project1.lpr
Compiling unit1.pas
Compiling resource lib/i386-linux/project1.or
Linking /tmp/project1
/usr/bin/ld: warning: link.res contains output sections; did you forget -T?
47 lines compiled, 4.10 sec
2 hint(s) issued
[TCompiler.Compile] end
TMainIDE.DoInitProjectRun ProgramFilename=/tmp/project1
[TDebugger.SetFileName] "/tmp/project1"
[TMainIDE.DoRunProject] B
[TMainIDE.DoRunProject] END
PR: /tmp/project1
ClipRect IS NIL ! clip ? TRUE
ClipRegion l=0,t=0,r=35,b=22 Rect l=23,t=0,r=35,b=22
ClipRect IS NIL ! clip ? TRUE
ClipRegion l=0,t=0,r=35,b=22 Rect l=23,t=0,r=35,b=22
ClipRect IS NIL ! clip ? TRUE
ClipRegion l=0,t=0,r=35,b=22 Rect l=23,t=0,r=35,b=22
ClipRect IS NIL ! clip ? TRUE
ClipRegion l=0,t=0,r=35,b=22 Rect l=23,t=0,r=35,b=22
ClipRect IS NIL ! clip ? TRUE
ClipRegion l=0,t=0,r=35,b=22 Rect l=23,t=0,r=35,b=22
[TDebugger.SetFileName] ""
ClipRect IS NIL ! clip ? TRUE
ClipRegion l=0,t=0,r=35,b=22 Rect l=23,t=0,r=35,b=22
LAZARUS END - cleaning up ...
[TMainIDE.Destroy] A
[TMainIDE.Destroy] B -> inherited Destroy... TMainIDE
[TMainIDE.Destroy] END
But with oxygen it crashes on startup:
[phil@chakra-pc ~]$ lazarus -style oxygen
TMainIDE.ParseCmdLineOptions:
PrimaryConfigPath="/home/phil/.lazarus"
SecondaryConfigPath="/etc/lazarus"
NOTE: editor options config file not found - using defaults
NOTE: miscellaneous options file not found - using defaults
Hinweis: CodeTools-Konfigurationsdatei nicht gefunden - verwende Voreinstellungen
NOTE: help options config file not found - using defaults
TMainIDE.DoNewProject A
ClipRect IS NIL ! clip ? TRUE
ClipRegion l=0,t=0,r=35,b=22 Rect l=23,t=0,r=35,b=22
TApplication.HandleException Access violation
Stack trace:
$B55C607A
$B57DB8B0
$B57D47DB
$B57D4949
$B57E06B3
$B57A9242
$B57B60FF
$B571DDEE
$B57208E5
$B573100F
$B572EDB5
$B5730460
$B2F15CBB
$B2F1AC79
$B359BA7D
$B35B228F
$B358D8FE
ClipRect IS NIL ! clip ? TRUE
ClipRegion l=0,t=0,r=35,b=22 Rect l=23,t=0,r=35,b=22
QWidget::repaint: Recursive repaint detected
lazarus.pp - unhandled exception
QPaintDevice: Cannot destroy paint device that is being painted
[TMainIDE.Destroy] A
[TMainIDE.Destroy] B -> inherited Destroy... TMainIDE
[TMainIDE.Destroy] END
Here the needed version numbers:
[phil@chakra-pc ~]$ pacman -Q qt fpc fpc-qtbindings && lazarus --version && cat /etc/chakra-release
qt 4.7.3-2
fpc 2.4.4-1
fpc-qtbindings 2.4-1
0.9.31 SVN Revision: 31775
Chakra Linux release 2011.04.R2 (Aida)
Mantis conversion info:
- Mantis ID: 19782
- Version: 0.9.31 (SVN)