QCAD

QCAD - 2D CAD System.

Click here for a documentation of the DokuWiki formatting syntax that can be used in reports

Please search for existing tasks (also closed ones) before opening a new task.

Please make sure that you are using the latest Version of QCAD before posting a bug (menu Help - Check for Updates)

Tasklist

FS#935 - Isometric projection: crash when projecting complex texts

Attached to Project: QCAD
Opened by -- (clive) - Friday, 04 October 2013, 15:02 GMT+2
Last edited by Andrew (andrew) - Friday, 04 October 2013, 21:00 GMT+2
Task Type Bug Report
Category Main
Status Closed
Assigned To Andrew (andrew)
Operating System All
Severity Low
Priority Normal
Reported Version 3.3.2
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Projecting text into an isometric plane crashes QCAD - unless the text is first exploded, which is not always an acceptable appearance.

This task depends upon

Closed by  Andrew (andrew)
Friday, 04 October 2013, 21:00 GMT+2
Reason for closing:  Fixed
Additional comments about closing:  https://github.com/qcad/qcad/commit/7e1e d205583ad736e2e288c0c3ba02546458e4a7
Comment by Andrew (andrew) - Friday, 04 October 2013, 15:07 GMT+2

Thanks Clive.

I cannot reproduce this at the moment.
Could you please check if this happens with any text or a text entity in particular or attach the drawing in question? Thanks.

Comment by -- (clive) - Friday, 04 October 2013, 15:34 GMT+2

Sure.
It may be something to do with this computer I'm using at the moment (Vista)?

The message given says something about data protection?

Comment by Husky (Husky) - Friday, 04 October 2013, 18:20 GMT+2

More Info about "Data Execution Prevention":
http://en.wikipedia.org/wiki/Data_Execution_Prevention

Comment by Andrew (andrew) - Friday, 04 October 2013, 20:58 GMT+2

Crash is likely caused by a variable being cleaned up by the garbage collector while the internal pointer to the same entity is still being used.

Relevant code:

entity = entity.data();

'entity' at the right is a QSharedPointer which is replaced by the internal pointer, which becomes invalid when the shared pointer is being cleaned up.

Comment by -- (clive) - Friday, 04 October 2013, 21:12 GMT+2

Great, thanks Andrew for the fix :)

Loading...