Hi Raymond,
Hi David,
On 07.01.2014 23:11, Steele, Raymond wrote:
> Raymond and I remain stuck on the last issue that we wrote to you about. We
> would like to better encapsulate our problem and see if you might be able to
> provide more clarification on what we might be able to try.
>
> 1. We have performed a directory clean and restarted the build --all
> process from the beginning with the debug flag set. This time we are not
> using the multi-processing commands.
> 2. The build process proceeds without error, even compiling all the files
> up to the svx module.
> 3. When the svx module is finished compiling and the LNK of the
> Library/libsvxcore.so is being performed the process stops with an "Undefined
> symbol" linking error.
> 4. The symbol is ParagraphData&ParagraphData::operator(const
> ParagraphData&) and it used to complain about this file in the e3dundo.o.
Wasn't it complaining about a missing ParagraphDataVector symbol originally?
> 5. Since the ParagraphData didn't appear in e3dundo neither did the
> OutlinerParaObject, I was at a loss for this linking error, but there was an
> #include <editeng/outlobj.hxx>. Since that is the location of
> OutlinerParaObject, I have commented out that include to see what would
> happen. The result is the system still compiled, but the linking failed
> again, this time in another location.
> 6. The new location that we got the same "Undefined symbol" error link
> message on was in the file sdrlinefillshadowtextattribute.o located in the
> attribute directory. This time I was unable to find a #include
> <editeng/outlobj.hxx> in either the header or source file. However
> sdrlinefillshadowtextattribute includes sdrlinesshadowtextattribute.hxx which
> includes sdrtextattribute.
> 7. sdrtextattribute was the first location we have found where the
> OutlinerParaObject is used and the #include <editeng/outlobj.hxx>. Since we
> had not found this object before (at least in the path that was failing),
> this was the first thing that made some sense in this problem.
> 8. We have reviewed your last email, but are having a difficult time
> understanding what you recommended. It appeared you were recommending we
> modify the OutlinerParaObject constructor, but how? You wanted us to remove
> the ParagraphDataVector parameter? Or did you want us to create a different
> constructor? What would the constructor look like?
I was suggesting to add another constructor that didn't have the problem of
needing a ParagraphDataVector symbol. Does this patch work for you? Since this
makes svx "binary incompatible" with its original you need to do a "build
--prepare --from svx" when you apply it.
--- main/editeng/inc/editeng/outlobj.hxx
+++ main/editeng/inc/editeng/outlobj.hxx
@@ -46,10 +46,8 @@ private:
public:
// constructors/destructor
- OutlinerParaObject(
- const EditTextObject& rEditTextObject,
- const ParagraphDataVector& rParagraphDataVector =
ParagraphDataVector(),
- bool bIsEditDoc = true);
+ OutlinerParaObject( const EditTextObject&, const ParagraphDataVector&,
bool bIsEditDoc = true);
+ OutlinerParaObject( const EditTextObject&);
OutlinerParaObject(const OutlinerParaObject& rCandidate);
~OutlinerParaObject();
--- main/editeng/source/outliner/outlobj.cxx
+++ main/editeng/source/outliner/outlobj.cxx
@@ -98,6 +98,10 @@ OutlinerParaObject::OutlinerParaObject(const EditTextObject&
rEditTextObject, co
{
}
+OutlinerParaObject::OutlinerParaObject( const EditTextObject&)
+: mpImplOutlinerParaObject( new ImplOutlinerParaObject(
rEditTextObject.Clone(), ParagraphDataVector(), true))
+{}
+
OutlinerParaObject::OutlinerParaObject(const OutlinerParaObject& rCandidate)
: mpImplOutlinerParaObject(rCandidate.mpImplOutlinerParaObject)
{
> 9. Also even after all of this, do you think that if we modify the
> OutlinerParaObject that the rest of the svx will link correctly and that all
> these errors we have seen from this problem resulted from an error in the
> OutlinerParaObject and our compiler?
I sure hope so ;-)
> Once again, thanks for all your help in advance.
You're welcome!
> I hope you had a good holiday season. We look forward to hearing back from
> you.
BTW: I'll also be away next week.
Herbert
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]