https://bugs.documentfoundation.org/show_bug.cgi?id=149483

--- Comment #5 from Justin L <[email protected]> ---
Debug suggests that the ODS FLAT TEXT created has two a href= entries?

sax/source/fastparser/fastparser.cxx:332: ::callbackStartElement[body]
ax/source/fastparser/fastparser.cxx:332: ::callbackStartElement[p]
sax/source/fastparser/fastparser.cxx:332: ::callbackStartElement[a]
xmloff/source/text/txtfldi.cxx:2885:
XMLUrlFieldImportContext::ProcessAttribute[https://bugs.documentfoundation.org/show_bug.cgi?id=115317]
Token[459717][href]
xmloff/source/text/txtfldi.cxx:2885:
XMLUrlFieldImportContext::ProcessAttribute[simple]
Token[460728][type]\xmloff/source/text/txtfldi.cxx:2898: unknown attribute
http://www.w3.org/1999/xlink xlink:type=simple
sax/source/fastparser/fastparser.cxx:332: ::callbackStartElement[a]
xmloff/source/text/txtfldi.cxx:2885:
XMLUrlFieldImportContext::ProcessAttribute[https://bugs.documentfoundation.org/show_bug.cgi?id=115317]
Token[459717][href]
xmloff/source/text/txtfldi.cxx:2885:
XMLUrlFieldImportContext::ProcessAttribute[simple] Token[460728][type]
xmloff/source/text/txtfldi.cxx:2898: unknown attribute
http://www.w3.org/1999/xlink xlink:type=simple
sc/source/ui/view/viewfunc.cxx:765: ::aEngine.GetText returned[isis]


It looks like this is going to get rather hairy. On the "export to clipboard"
XMLTextParagraphExport::exportParagraph creates an enumeration that has TWO
TextFields (if the selection ends on a textfield).

So I expect the problem to be in xTextEnum = xEA->createEnumeration();

Yup - there are three "portions" here. "This ", "is", " a link". So the
enumeration (based on the selection) creates portions
 5 "" 5         (Text)
 5 "\x001" 6    (TextField)
 6 "" 6         (TextField)

If the selection had gone to 7, then the last portion would be 6 " " 7 and be
considered a Text portion. So why would 6, 6 be considered a TextField? Well
this is all UNO garbage, so it is a mystery as to what properties becomes what.
And we immediately lose all knowledge of start/end/selection etc. Boy I HATE
UNO.

make sd.check says that it isn't enough to say
SvxUnoTextRangeEnumeration::SvxUnoTextRangeEnumeration
-       if( nEndPos < rSel.nStartPos )
+       if( nEndPos <= rSel.nStartPos )
            continue;

So, it looks like some hacky solution may be needed for
XMLTextParagraphExport::exportTextRangeEnumeration.

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

Reply via email to