Welcome to the Project Developers' Table

Moderator: Rathinagiri

User avatar
Roberto Lopez
HMG Founder
Posts: 3980
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 27 times
Been thanked: 168 times

Re: Welcome to the Project Developers' Table

Post by Roberto Lopez » Wed Oct 20, 2010 10:14 pm

Pritpal,

The clipboard problem shown by Rathinagiri in HBIDE on this post:

viewtopic.php?p=14516#p14516

Occurs with the HBIDE included in current Harbour binary nightly build too.

So, this is not an HMG problem.

I guess that is a MingW compatibility problem, since you can't reproduce it.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

User avatar
Roberto Lopez
HMG Founder
Posts: 3980
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 27 times
Been thanked: 168 times

Post by Roberto Lopez » Wed Oct 20, 2010 10:30 pm

Roberto Lopez wrote:I guess that is a MingW compatibility problem, since you can't reproduce it.
I'll create a new Harbour build using the MingW version recommended by QT installer and test again.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

User avatar
Roberto Lopez
HMG Founder
Posts: 3980
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 27 times
Been thanked: 168 times

Post by Roberto Lopez » Wed Oct 20, 2010 11:29 pm

mrduck wrote:Pritpal and Roberto, please test this:

open hbide and edit a prg file
open notepad

in hbide select part of the text, rightclick, copy
go to notepad, do a paste... it will work

close hbide, I and Roberto get a GPF... Pritpal doesn't
I've discovered an interesting thing.

If the file is unsaved, attempting to close HBIDE will show a QMessageBox asking for save. In this case the GPF will not occur.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

User avatar
bedipritpal
Posts: 122
Joined: Thu Sep 02, 2010 10:47 pm

Post by bedipritpal » Thu Oct 21, 2010 12:33 am

mrduck wrote:Pritpal and Roberto, please test this:

open hbide and edit a prg file
open notepad

in hbide select part of the text, rightclick, copy
go to notepad, do a paste... it will work

close hbide, I and Roberto get a GPF... Pritpal doesn't
go to notepad and try to paste: I don't paste anything, like if clipboard is now empty

Pritpal, what happens to you ?

I did browse source code and did some tests... I could not find any problem at the moment and QClipboard is correctly never "delete"d
Exactly as you descrbided except for the GPF.

NOTE: QClipboard() is not constructed with "new()". It returns a pointer to QApplication::clipboard(), so have never to be detroyed.

Please check after this change:

2010-10-20 17:02 UTC-0800 Pritpal Bedi (bedipritpal@hotmail.com)
* contrib/hbqt/qscintilla/qth/QsciAbstractAPIs.qth
* contrib/hbqt/qscintilla/qth/QsciCommand.qth
* contrib/hbqt/qscintilla/qth/QsciCommandSet.qth
* contrib/hbqt/qscintilla/qth/QsciLexer.qth
* contrib/hbqt/qtdesigner/qth/QDesignerActionEditorInterface.qth
* contrib/hbqt/qtdesigner/qth/QDesignerFormWindowCursorInterface.qth
* contrib/hbqt/qtdesigner/qth/QDesignerFormWindowInterface.qth
* contrib/hbqt/qtdesigner/qth/QDesignerFormWindowManagerInterface.qth
* contrib/hbqt/qtdesigner/qth/QDesignerObjectInspectorInterface.qth
* contrib/hbqt/qtdesigner/qth/QDesignerPropertyEditorInterface.qth
* contrib/hbqt/qtdesigner/qth/QDesignerWidgetBoxInterface.qth
* contrib/hbqt/qtgui/qth/QApplication.qth
+ Added: Constructor = no.
* contrib/hbqt/qtgui/qth/QClipboard.qth
+ Added: Constructor = no.
QClipboard() does not have constructor so it has never to be released.
Maybe this fixes the bug reported on HMG forums.

* contrib/hbqt/qtgui/g/QClipboard.cpp
* Re-generated.

* contrib/hbqt/utils/hbqtgen.prg
+ Introduced: ::isDetached member pulled from .qth header.
enjoy hbIDEing... Pritpal Bedi

User avatar
Roberto Lopez
HMG Founder
Posts: 3980
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 27 times
Been thanked: 168 times

Post by Roberto Lopez » Thu Oct 21, 2010 3:34 am

bedipritpal wrote: * contrib/hbqt/qtgui/qth/QClipboard.qth
+ Added: Constructor = no.
QClipboard() does not have constructor so it has never to be released.
Maybe this fixes the bug reported on HMG forums.
The problem still exist.

QT 4.7.
MingW 4.5.0-1.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

User avatar
Roberto Lopez
HMG Founder
Posts: 3980
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 27 times
Been thanked: 168 times

Post by Roberto Lopez » Thu Oct 21, 2010 2:28 pm

Pritpal,

I've built Harbour with QT 4.7 and the MingW version supplied with QT SDK 2010.5 and the problem remains.

So, I can't figure out which is the reason because you are not able to reproduce it.

My only (an final) guess is that you are using a different OS.

Rathinagiri and me are using Windows 7 and Vista.

Which Windows version are you using in your development machine?

In the case that you are using XP, we have the answer about the guilty component in our environments.

There are many things changed from XP to Vista/7, but as Rathinagiri suggested I guess that it could be something related to security.

Another 'mistery' is why it GPFs without generating an hb_out.log file.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

User avatar
Roberto Lopez
HMG Founder
Posts: 3980
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 27 times
Been thanked: 168 times

Post by Roberto Lopez » Thu Oct 21, 2010 2:38 pm

Roberto Lopez wrote:Pritpal,

In the case that you are using XP, we have the answer about the guilty component in our environments.

There are many things changed from XP to Vista/7, but as Rathinagiri suggested I guess that it could be something related to security.

Another 'mistery' is why it GPFs without generating an hb_out.log file.
Another thing I've discovered is that with QT SDK MIngW, the problem does not arises always (you'll get the fail about the half of the times that you attempt to reproduce).

This is the Windows info about the GPF:
Name of the problem event: APPCRASH
Application Name: hbide.exe
Application Version: 0.0.0.0
Application Timestamp: 4cc039ca
Name of the module with errors: msvcrt.dll
Version of the module with errors: 7.0.7600.16385
Timestamp of the module with errors: 4a5bda6f
Exception Code: c0000005
Exception offset: 0001a6ae
Operating system version: 6.1.7600.2.0.0.256.1
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

mrduck
Posts: 497
Joined: Fri Sep 10, 2010 5:22 pm

Post by mrduck » Thu Oct 21, 2010 2:39 pm

Roberto Lopez wrote: Pritpal,

I've built Harbour with QT 4.7 and the MingW version supplied with QT SDK 2010.5 and the problem remains.

So, I can't figure out which is the reason because you are not able to reproduce it.

My only (an final) guess is that you are using a different OS.

Rathinagiri and me are using Windows 7 and Vista.
I use xp pro sp3.
Another 'mistery' is why it GPFs without generating an hb_out.log file.
When you get a GPF ( that we have seen is inside qtcore4 ) program execution stops and all the harbour VM is stopped...

User avatar
Roberto Lopez
HMG Founder
Posts: 3980
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 27 times
Been thanked: 168 times

Post by Roberto Lopez » Thu Oct 21, 2010 3:37 pm

mrduck wrote:
I use xp pro sp3.
So, the only explanation to the fact that Pritpal was unable to reproduce the problem, is that for his system (like mine with the MingW QT SDK) the error does not arises on every execution but in a random basis.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

User avatar
Roberto Lopez
HMG Founder
Posts: 3980
Joined: Wed Jul 30, 2008 6:43 pm
Has thanked: 27 times
Been thanked: 168 times

Post by Roberto Lopez » Thu Oct 21, 2010 4:28 pm

Pritpal,

There is another problem with current HBQT code (r 15658).

You can check it in testbrow.

When you edit a cell and confirm with [enter] the program ends.

When you restart the demo you'll notice that the position used to save was incorrect.

The problem is here:

STATIC PROCEDURE my_select( pModelIndex, nCX, nCY )
LOCAL qModelIndex := QModelIndexFromPointer( pModelIndex )

nCX := qModelIndex:column()
nCY := qModelIndex:row()
RETURN

Since HMG browse is based on testbrow, the same problem arises on browse demos. The position retrieved from QModelIndex is incorrect.
Regards/Saludos,

Roberto


(Veritas Filia Temporis)

Post Reply