Bug 81433 - CppUnit 1.13.2 runner on WIN64 crashes + fix description
Summary: CppUnit 1.13.2 runner on WIN64 crashes + fix description
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: contrib (show other bugs)
Version:
(earliest affected)
unspecified
Hardware: x86-64 (AMD64) Windows (All)
: medium minor
Assignee: Markus Mohrhard
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-07-16 15:31 UTC by Peter Tax
Modified: 2014-08-30 21:53 UTC (History)
1 user (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Peter Tax 2014-07-16 15:31:39 UTC
We downloaded the CppUnit 1.13.2 release, and succesfully used this to run our unit tests under Windows using Visual Studio 2012.

The runner application, however crashed, which after a little bit of debugging I found I could easily fix myself. The problem is that the application, in the TreeHierarchyDlg class, used the GetItemData/SetItemData to set a pointer to a unit test. To do so, it casts the pointer to the test to DWORD. This results in truncating the pointer, and thus in a crash. The fix is simple: cast to DWORD_PTR instead.

It's only two calls:

SetItemData in TreeHierarchyDlg::AddTest
GetItemData in TreeHierarchyDlg::findSelectedTest

After these changes we could succesfully use the runner application.
Comment 1 Markus Mohrhard 2014-07-17 13:34:07 UTC
I can't promise that I will release a 1.13.3. More likely I will release 1.14.0 with this fix as soon as my last item for the release has been implemented.
Comment 2 Markus Mohrhard 2014-08-30 21:53:20 UTC
Has been fixed for some time with http://cgit.freedesktop.org/libreoffice/cppunit/commit/?id=d44643d07a61ee9efc100f23c47ab3969efda998

It is also in the 1-13 branch but currently I don't plan to release a new version.