https://bugs.freedesktop.org/show_bug.cgi?id=79422
--- Comment #13 from Seyeong Kim <seyeong....@canonical.com> --- (In reply to comment #12) > right > > if there are around 40000 rows. then assume that replaced 6200 rows. > > Join() called 6200 count and > > inside Join(), loop from 0~0 to 0~6200. this is actual replace job. > > after replaceall, trigger to call Join() every time above. > > below is function call i found. > > 1. when push replaceall button > > in sc directory > > something more for handle click > ScDocument::SearchAndReplace > ScTable::SearchAndReplace > ScTable::ReplaceAll > ScRangeList::Join > > > 2. triggering every time > > svx/source/dialog/srchdlg.cxx > IMPL_LINK(SvxSearchDialog, TimeoutHdl_Impl, Timer*, pTimer) > trigerring > > then in sc directory > here ScTabViewShell::HasSelecthion first > ScDocument::GetSelectionFunction > ScTable::UpdateSelectionFunction > ScColumn::UpdateSelectionFunction ( here loop 1024 if selected col is only 1 > ) > ColumnSpanSet::set > ScMarkData::GetMarkedRanges > ScMarkData::FillRangeListWithMarks > ScRangeList::Join ( slow ) > > > I disabled #2 function. then after replace all cpu 100% usage not happened. > i know it's wrong but i just tested. > > I modified ScColumn::UpdateSelectionFunction to loop only selected col times > for testing. > but it was not enough. -- You are receiving this mail because: You are the assignee for the bug.
_______________________________________________ Libreoffice-bugs mailing list Libreoffice-bugs@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-bugs