Issue 119493

Summary: [From Symphony] AOO crash if a connector which connected to PPT table
Product: Impress Reporter: liuping <doneyourself>
Component: open-importAssignee: AOO issues mailing list <issues>
Status: CLOSED FIXED QA Contact:
Severity: Major    
Priority: P1 (highest) CC: awf.aoo, liushenf, louqingle, rb.henschel, sunyingshadesun
Version: 3.4.0   
Target Milestone: 4.0.0   
Hardware: PC   
OS: All   
Issue Type: DEFECT Latest Confirmation in: ---
Developer Difficulty: ---
Attachments:
Description Flags
sample file
none
capture.png
none
patch for ppt import table connectd by connector crash awf.aoo: review+

Description liuping 2012-05-29 06:14:09 UTC
Created attachment 77687 [details]
sample file

1.open the sample file in MS and in AOO

2. Display normally in MS (table connected by a connector)

Defect:

crash in AOO
Comment 1 liuping 2012-05-29 06:14:46 UTC
Created attachment 77688 [details]
capture.png
Comment 2 Regina Henschel 2012-05-29 15:14:17 UTC
Duplicate to your own issue 119433

*** This issue has been marked as a duplicate of issue 119433 ***
Comment 3 liuping 2012-07-05 03:43:13 UTC
because bug 119433 don't reproduce ,so reopen this defect
Comment 4 liuping 2012-07-05 03:44:10 UTC
reproduce this defect on win7-64bit again on version 1354891
Comment 5 SunYing 2012-07-05 05:08:16 UTC
I'm checking this defect.
Comment 6 liuping 2012-07-05 06:57:39 UTC
the step of creating the sample file: insert a table and a connector in symphony and save as .ppt file 

> sample file
> 
> 1.open the sample file in MS and in AOO
> 
> 2. Display normally in MS (table connected by a connector)
> 
> Defect:
> 
> crash in AOO
Comment 7 SunYing 2012-07-09 13:52:11 UTC
root cause:
reference null point.
Comment 8 SunYing 2012-07-10 05:22:29 UTC
Solution:
In MS, the one_row_one_col table is made up of five shape,the connector is connected to some part of a table. 
but in AOO, the connector is connected to the whole group table,so the connector obj is a group table when export by AOO,should process this situation when import.

in file "main\filter\source\msfilter\svdfppt.cxx":
in function: SdrPowerPointImport::CreateTable( ) at line 7738.

The table object is created by a group object,then release the group object pointer. 
when a connector connect to a group object pointer created by AOO export, and the group object pointer has been release in line 7846,but the connector solver still use the pointer,so crash occur.
There are a solution which replace the group object's pointer with new table object pointer.
Comment 9 SunYing 2012-07-12 06:03:02 UTC
Created attachment 78631 [details]
patch for ppt import table connectd by connector crash
Comment 10 SVN Robot 2012-07-12 11:19:39 UTC
"af" committed SVN revision 1360632 into trunk:
#i119493# Fixed import of tables with connectors.
Comment 11 Andre 2012-07-12 11:21:19 UTC
Comment on attachment 78631 [details]
patch for ppt import table connectd by connector crash

Reviewed and tested: OK
Comment 12 Andre 2012-07-12 11:21:46 UTC
Fixed.
Comment 13 liuping 2012-08-20 06:31:56 UTC
Verified pass on Windows7-64bit, Redhat 32bit,ubutu 10.04 Mac10.7 with AOO trunk r1374181
Comment 14 louqle 2012-08-28 07:16:13 UTC
verified on XP SP3, win7, win7 64-bit, Vista, Ubuntu 12.04, Redhat 6.1, suse 11 sp1, suse 11 sp1 64-bit in trunk build 1376366, pass. Close this bug