https://issues.apache.org/ooo/show_bug.cgi?id=114416

hanya <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[email protected]

--- Comment #6 from hanya <[email protected]> ---
It can be created by one of form components.

The attached file was generated by
<meta:generator>gnumeric/1.10.11</meta:generator>.
And it contains: 

<form:value-range xml:id="CTRL0000" form:id="CTRL0000"
form:orientation="vertical"
 form:value="47.3684210526316" form:min-value="0" form:max-value="100" 
form:step-size="1" form:page-step-size="10" gnm:linked-cell="Sheet1.$A$1"/>

The following is generated by AOO400m3(Build:9702)  -  Rev. 1499775

<form:value-range form:name="Scrollbar 1" 
form:control-implementation="ooo:com.sun.star.form.component.ScrollBar"
 xml:id="control1" form:id="control1" form:orientation="vertical" 
form:value="0" form:linked-cell="Sheet1.A1" form:delay-for-repeat="PT0.50S" 
form:min-value="0" form:max-value="100">

The differences are form:control-implementation and form:name attributes.

In xmloff::OElementImport::StartElement method, if no control-implementation 
specified, its default name is tried to detect by calling
determineDefaultServiceName method. 
But the result of the method does not stored in m_sServiceName instance
variable.
In determineDefaultServiceName method, the following element should be added: 
case OControlElement::VALUERANGE:        pServiceName =
"com.sun.star.form.component.ScrollBar"; break;
VALUERANGE is defined in controlelement.hxx file but not shown in the detection
method.

After the above change, I got the crash in implGetDefaultName method called
from EndElement method. 
This method is called because there is no form:name attribute is not specified.
Why crashed, because m_xParentContainer member does not contain valid
reference. 
m_xParentContainer.is() returns 0 in implGetDefaultName method at that time.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.

Reply via email to