Bug 89460

Summary: crash when calling uno slot on record changes if already set
Product: LibreOffice Reporter: Laurent Godard <lgodard.libre>
Component: CalcAssignee: Laurent Godard <lgodard.libre>
Status: RESOLVED FIXED    
Severity: major    
Priority: medium    
Version: Inherited From OOo   
Hardware: Other   
OS: All   
Whiteboard: target:4.5.0 target:4.4.2 target:4.3.7
Crash report or crash signature: Regression By:
Attachments: backtrace on master 4.5 dev
sample document with macro to reproduce

Description Laurent Godard 2015-02-19 07:48:25 UTC
Created attachment 113493 [details]
backtrace on master 4.5 dev

The macro recorder gives this snippet for changing the "Record Changes" state in calc

dim args3(0) as new com.sun.star.beans.PropertyValue
args3(0).Name = "TraceChangeMode"
args3(0).Value = false
dispatcher.executeDispatch(document, ".uno:TraceChangeMode", "", 0, args3())

If "Record changes" is ON --> works
If "Record Changes" is already OFF --> crash

==> attached, a gdb bt
==> attached, a sample document with a macro reproducing (click button)

note : if we replace the boolean false par any other 'integer' value, no more crash but the statement behaves as a toogle state --> ON, OFF, ON, OFF ...
don't know if this is related
Comment 1 Laurent Godard 2015-02-19 07:49:13 UTC
Created attachment 113494 [details]
sample document with macro to reproduce
Comment 2 Laurent Godard 2015-02-19 14:06:04 UTC
submitted a patch
https://gerrit.libreoffice.org/#/c/14553/
Comment 3 Laurent Godard 2015-02-19 14:57:44 UTC
proposed a patch (to be validated though)
https://gerrit.libreoffice.org/#/c/14553/
Comment 4 Commit Notification 2015-02-19 18:55:21 UTC
Laurent Godard committed a patch related to this issue.
It has been pushed to "master":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=bf5c5f359cf4eb36a0a9a1110ec2aa3393bb87df

tdf#89460 test pChangeTrack before using it

It will be available in 4.5.0.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 5 Commit Notification 2015-02-19 19:05:17 UTC
Laurent Godard committed a patch related to this issue.
It has been pushed to "libreoffice-4-4":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=36578765e206ec963988d75e8a53adca0c981bc8&h=libreoffice-4-4

tdf#89460 test pChangeTrack before using it

It will be available in 4.4.2.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.
Comment 6 Commit Notification 2015-02-19 19:49:04 UTC
Laurent Godard committed a patch related to this issue.
It has been pushed to "libreoffice-4-3":

http://cgit.freedesktop.org/libreoffice/core/commit/?id=bf57bbef91bc40090561d614e4c2070c01aef7cb&h=libreoffice-4-3

tdf#89460 test pChangeTrack before using it

It will be available in 4.3.7.

The patch should be included in the daily builds available at
http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
http://wiki.documentfoundation.org/Testing_Daily_Builds
Affected users are encouraged to test the fix and report feedback.