incubator-ooo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Lei Wang <lei.wang.l...@gmail.com>
Subject Re: [Call-for-Review][Calc][From Symphony]Crash if undo redo creating data pilot from imported data
Date Thu, 14 Jun 2012 06:47:40 GMT
Done. Thanks for your contribution

On Wed, Jun 13, 2012 at 9:03 PM, Lei Wang <lei.wang.leiw@gmail.com> wrote:

> I will take care of this one.
>
>
> On Wed, Jun 13, 2012 at 2:04 PM, 彭云全 <pengyunquan@gmail.com> wrote:
>
>> hI All,
>>
>>    My name is pengyunquan. I am a developer working several years in
>> Symphony team. My specail areas are PivotTable / Graphic / VCL /
>> Performance.
>>
>> I have a patch for review.
>> https://issues.apache.org/ooo/show_bug.cgi?id=119956
>>
>> Root Cause : A rule in calc is that inserting a sheet should enable
>> DrawUndo first, because inserting a new sheet will cause a new
>> ScDrawPage being inserted into SdrModel, and this action should be
>> managed by DrawUndo. But on creation of PivotTable, this rule is not
>> obeyed. When creating PivotTable on new sheet, a new sheet is inserted
>> without enablement of DrawUndo. As a result, when undo the creation of
>> PivotTable, the new sheet is removed but the SdrModel is not by
>> synchronized because it's the DrawUndo's responsibility to do the
>> synchronization but DrawUndo is not recorded. When inserting sheets
>> from file for the 2nd time, the undo list is cleared and some
>> ScDrawPage should be destroyed, but as stated above the ScDrawPage is
>> not correctly maintained when undo the creation of PivotTable, so
>> incorrect ScDrawPage is destroyed and cause dead object access later.
>>
>> Solution : Enable DrawUndo before inserting a new sheet on creation of
>> PivotTable
>>
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message