Pritpal:
Tests with Harbour fresh checkout:
* $Id: ChangeLog 14189 2010-03-19 13:11:59Z vszakats $
2010-03-19 14:04 UTC+0100 Viktor Szakats (harbour.01 syenar.hu)
os2qt development has moved to Qt462
Current tests with os2qt462 r701
so we have a newer Harbour and newer os2Qt462
With our 4 specific error cases
- one has been fixed (a)
- one changed behaviour (c)
- two remain with same behaviour (b, d)
a) demoqt.prg
Case: QT_QWIDGET_RESIZE(0)
PMMERGE 3:0007f6f8
Fixed
For first time in history I see demoqt.exe running on OS/2
b) demoqt.prg, MsgInfo( "Testing" ) added
Case: Object destruction
LIBC063 0:000669ca
Remain
Question: Is this a common problem in hbqt in rest of platforms, or
exist only in OS/2 ?
This is (1,2) output:
------------------------------------
demoqt.prg:127:MAIN(): HB_TR_ALWAYS
demoqt.prg:128:MAIN(): HB_TR_ALWAYS -----------------b-----------------
Exception c0000005 at address 0x1de369ca
Exception Code:C0000005
Exception Address:1DE369CA
EAX:00000001 EBX:0290FC8C ECX:0290FC94 EDX:00000001
ESI:00000000 EDI:00000000 EBP:0030FB68
CS:EIP:005B:1DE369CA SS:ESP:0053:0030FB50
DS:0053 ES:0053 FS:150B GS:0000
Flags:00010246
Called from MSGINFO(605) in demoqt.prg
Called from MAIN(131) in demoqt.prg
Killed by SIGSEGV
pid=0x45d1 ppid=0x459d tid=0x0001 slot=0x00a4 pri=0x0200 mc=0x0001
E:\HARBOUR103C\HARBOUR\CONTRIB\HBQT\TESTS\DEMOQT.EXE
LIBC063 0:000669ca
cs:eip=005b:1de369ca ss:esp=0053:0030fb50 ebp=0030fb68
ds=0053 es=0053 fs=150b gs=0000 efl=00010246
eax=00000001 ebx=0290fc8c ecx=0290fc94 edx=00000001 edi=00000000
esi=00000000
Process dumping was disabled, use DUMPPROC / PROCDUMP to enable it.
------------------------------------
c) hbide project
Case: hbide crash at startup
LIBC063 0:000669ca
Changed behaviour
My description was, for previous behaviour:
-----------------------------
New failure
When run, show logo, build window with content and CRASH in 5 seconds
without human intervention. Tested many times and same behaviour
Something changed in hbqt*, hbide. With 13976 was running with some
failures, but do not crash in 5 seconds
Initial window size is different in both versions
-----------------------------
In current behaviour, show logo and never build window, then crash
This is (1,2) output:
------------------------------------
idemisc.prg:925:HBIDE_DBG(): HB_TR_ALWAYS NIL
QWidget::setLayout: Attempting to set QLayout "" on QDockWidget
"dockProjectTree", which already has a layout
QWidget::setLayout: Attempting to set QLayout "" on QDockWidget
"dockEditorTabs", which already has a layout
QWidget::setLayout: Attempting to set QLayout "" on QDockWidget
"dockFuncList", which already has a layout
QWidget::setLayout: Attempting to set QLayout "" on QDockWidget
"dockSkltnsTree", which already has a layout
QWidget::setLayout: Attempting to set QLayout "" on QDockWidget
"dockHelp", which already has a layout
QWidget::setLayout: Attempting to set QLayout "" on QDockWidget
"dockSkeleton", which already has a layout
QWidget::setLayout: Attempting to set QLayout "" on QDockWidget
"dockFindInFiles", which already has a layout
QWidget::setLayout: Attempting to set QLayout "" on QDockWidget
"dockThemes", which already has a layout
QWidget::setLayout: Attempting to set QLayout "" on QDockWidget
"dockProperties", which already has a layout
QWidget::setLayout: Attempting to set QLayout "" on QDockWidget
"dockEnvironments", which already has a layout
QWidget::setLayout: Attempting to set QLayout "" on QDockWidget
"dockCompileResults", which already has a layout
QWidget::setLayout: Attempting to set QLayout "" on QDockWidget
"dockLinkResults", which already has a layout
QWidget::setLayout: Attempting to set QLayout "" on QDockWidget
"dockOutputResults", which already has a layout
QWidget::setLayout: Attempting to set QLayout "" on QDockWidget
"dockDocViewer", which already has a layout
QWidget::setLayout: Attempting to set QLayout "" on QDockWidget
"dockDocWriter", which already has a layout
QWidget::setLayout: Attempting to set QLayout "" on QDockWidget
"dockFunctions", which already has a layout
Exception c0000005 at address 0x1de369ca
Exception Code:C0000005
Exception Address:1DE369CA
EAX:00000001 EBX:02C00F6C ECX:02C00F74 EDX:00000001
ESI:00000000 EDI:02C00F9C EBP:005CFCE8
CS:EIP:005B:1DE369CA SS:ESP:0053:005CFCD0
DS:0053 ES:0053 FS:150B GS:0000
Flags:00010246
Called from HBIDE:CREATE(487) in hbide.prg
Called from MAIN(117) in hbide.prg
Killed by SIGSEGV
pid=0x45f7 ppid=0x459d tid=0x0001 slot=0x00a2 pri=0x0200 mc=0x0001
E:\HARBOUR103C\HARBOUR\CONTRIB\HBIDE\HBIDE.EXE
LIBC063 0:000669ca
cs:eip=005b:1de369ca ss:esp=0053:005cfcd0 ebp=005cfce8
ds=0053 es=0053 fs=150b gs=0000 efl=00010246
eax=00000001 ebx=02c00f6c ecx=02c00f74 edx=00000001 edi=02c00f9c
esi=00000000
Process dumping was disabled, use DUMPPROC / PROCDUMP to enable it.
------------------------------------
d) demoxbp.prg
Case: QPIXMAP:SCALED(0)
LIBC063 0:000669ca
Remain
This is (1,2) output:
------------------------------------
Exception c0000005 at address 0x1de369ca
Exception Code:C0000005
Exception Address:1DE369CA
EAX:00000001 EBX:02A9D15C ECX:02A9D164 EDX:00000001
ESI:00000000 EDI:02A9D124 EBP:0039F728
CS:EIP:005B:1DE369CA SS:ESP:0053:0039F710
DS:0053 ES:0053 FS:150B GS:0000
Flags:00010246
Called from QPIXMAP:SCALED(0) in ../../../TQPixmap.prg
Called from XBPSTATUSBAR:SETPOINTER(0) in ../../../xbpwindow.prg
Called from BUILD_STATUSBAR(531) in demoxbp.prg
Called from BUILDADIALOG(168) in demoxbp.prg
Called from _BUILDADIALOG(107) in demoxbp.prg
Called from MAIN(98) in demoxbp.prg
Killed by SIGSEGV
pid=0x4612 ppid=0x459d tid=0x0001 slot=0x0096 pri=0x0200 mc=0x0001
E:\HARBOUR103C\HARBOUR\CONTRIB\HBXBP\TESTS\DEMOXBP.EXE
LIBC063 0:000669ca
cs:eip=005b:1de369ca ss:esp=0053:0039f710 ebp=0039f728
ds=0053 es=0053 fs=150b gs=0000 efl=00010246
eax=00000001 ebx=02a9d15c ecx=02a9d164 edx=00000001 edi=02a9d124
esi=00000000
Process dumping was disabled, use DUMPPROC / PROCDUMP to enable it.
------------------------------------
Previously I reported cases to NetLabs/osqt development
Below are included last response from Dmitry, his "general thoughts" may
be useful
David Macias
David Macias wrote:
... coming from Ticket 133 "API_FPU_CW_Wrappers.h errors"
We have our firsts Harbour+os2gcc442+hbqt+qt461 applications running,
but with
errors still
Many crashes with "Killed by SIGSEGV"
I'm not familiar with Harbour, so the information you provide here
doesn't give
me enough detail to say what can cause the crashes you have.
First of all, you need to build a debug version of Qt and a debug
version of
Harbour and then try to reproduce your crashes using these debug builds
-- I
don't know about Harbour, but Qt may print some useful messages to the
console
that can give us a hint.
Next, if the above doesn't help, you will need to get an OS/2 debugger
and run
the debug build from there. Using the debugger, we will be able to get
the call
stack at a time of the crash and therefore locate the exact place in the
source
code responsible for this.
Ask me if you need more details on how to get all this debug stuff.
Now, here are some general thoughts on the problems you mentioned.
Regarding broken classes. Of course, there may still be some
OS/2-specific bugs
in our port of Qt, but all key classes generally "behave properly", at
least in
a hundred Qt applications me and other people tried and tested -- you
can see it
yourself if you install the demos and examples package and try to run
applications out there.
Regarding the order of size events, I must say that Qt for OS/2 indeed
may (and
sometimes will) generate events in a different order compared to other
platforms: this often depends on the Presentation Manager and there is
nothing
we can do about it. In general, application should not rely on the
particular
event order because it is not guaranteed by the design of Qt.
Regarding the object destruction in Qt. I don't know if this is relevant
or not,
but Qt uses a lot of global and local static objects (in terms of C++)
that get
automatically constructed at program startup and destroyed at
termination. In
C++, the order in which these objects are constructed and destructed, is
not
guaranteed. I found one bug related to this issue in Qt itself (see r599
in the
SVN) but there may be more.
_______________________________________________
Harbour mailing list (attachment size limit: 40KB)
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour