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.
