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

            Bug ID: 145892
           Summary: Crash (failed assert) in DBGUTIL build when inserting
                    a section from a WEBP
           Product: LibreOffice
           Version: 7.3.0.0.alpha1+
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: medium
         Component: LibreOffice
          Assignee: libreoffice-bugs@lists.freedesktop.org
          Reporter: mikekagan...@hotmail.com
                CC: er...@redhat.com

Created attachment 176504
  --> https://bugs.documentfoundation.org/attachment.cgi?id=176504&action=edit
A WEBP image ( source:
https://upload.wikimedia.org/wikipedia/commons/a/a1/Johnrogershousemay2020.webp
)

1. Download the attachment.
2. In a DBGUTIL master build, create a new text document.
3. Insert->Section; select [x] Link; [ Browse ] and select the WEBP image, then
[ 
Insert ]

=> Debug Error!

Program: C:\lo\src\build\instdir\program\soffice.bin

abort() has been called

(Press Retry to debug the application)

Version: 7.3.0.0.alpha1+ (x64) / LibreOffice Community
Build ID: f234bea67195ee2b9c80ba0b4a18b4a81cf57cfb
CPU threads: 12; OS: Windows 10.0 Build 19043; UI render: Skia/Raster; VCL: win
Locale: fr-FR (ru_RU); UI: en-US
Calc: CL

The call stack is:

> icuucd70.dll!icu_70::KhmerBreakEngine::divideUpDictionaryRange(UText * text, 
> int rangeStart, int rangeEnd, icu_70::UVector32 & foundBreaks, UErrorCode & 
> status) Line 1198    C++
> icuucd70.dll!icu_70::DictionaryBreakEngine::findBreaks(UText * text, int 
> startPos, int endPos, icu_70::UVector32 & foundBreaks, UErrorCode & status) 
> Line 83  C++
> icuucd70.dll!icu_70::RuleBasedBreakIterator::DictionaryCache::populateDictionary(int
>  startPos, int endPos, int firstRuleStatus, int otherRuleStatus) Line 166 C++
> icuucd70.dll!icu_70::RuleBasedBreakIterator::BreakCache::populatePreceding(UErrorCode
>  & status) Line 551      C++
> icuucd70.dll!icu_70::RuleBasedBreakIterator::BreakCache::previous(UErrorCode 
> & status) Line 291       C++
> icuucd70.dll!icu_70::RuleBasedBreakIterator::BreakCache::preceding(int 
> startPos, UErrorCode & status) Line 259        C++
> icuucd70.dll!icu_70::RuleBasedBreakIterator::preceding(int offset) Line 670   
> C++
> i18npoollo.dll!i18npool::BreakIterator_Unicode::getLineBreak(const 
> rtl::OUString & Text, long nStartPos, const com::sun::star::lang::Locale & 
> rLocale, long nMinBreakPos, const 
> com::sun::star::i18n::LineBreakHyphenationOptions & hOptions, const 
> com::sun::star::i18n::LineBreakUserOptions & __formal) Line 508   C++
> i18npoollo.dll!i18npool::BreakIteratorImpl::getLineBreak(const rtl::OUString 
> & Text, long nStartPos, const com::sun::star::lang::Locale & rLocale, long 
> nMinBreakPos, const com::sun::star::i18n::LineBreakHyphenationOptions & 
> hOptions, const com::sun::star::i18n::LineBreakUserOptions & bOptions) Line 
> 280       C++
> swlo.dll!SwTextGuess::Guess(const SwTextPortion & rPor, SwTextFormatInfo & 
> rInf, const unsigned short nPorHeight) Line 409    C++
> swlo.dll!SwTextPortion::Format_(SwTextFormatInfo & rInf) Line 305     C++
> swlo.dll!SwTextPortion::Format(SwTextFormatInfo & rInf) Line 457      C++
> swlo.dll!SwTextFormatter::BuildPortions(SwTextFormatInfo & rInf) Line 552     
> C++
> swlo.dll!SwTextFormatter::FormatLine(o3tl::strong_int<long,Tag_TextFrameIndex>
>  nStartPos) Line 1691   C++
> swlo.dll!SwTextFrame::FormatLine(SwTextFormatter & rLine, const bool bPrev) 
> Line 1198 C++
> swlo.dll!SwTextFrame::Format_(SwTextFormatter & rLine, SwTextFormatInfo & 
> rInf, const bool bAdjust) Line 1555 C++
> swlo.dll!SwTextFrame::Format_(OutputDevice * pRenderContext, SwParaPortion * 
> pPara) Line 1729 C++
> swlo.dll!SwTextFrame::Format(OutputDevice * pRenderContext, const 
> SwBorderAttrs * __formal) Line 1917 C++
> swlo.dll!SwContentFrame::MakeAll(OutputDevice * __formal) Line 1515   C++
> swlo.dll!SwFrame::OptPrepareMake() Line 399   C++
> swlo.dll!SwFrame::OptCalc() Line 1087 C++
> swlo.dll!SwLayAction::FormatContent_(const SwContentFrame * pContent, const 
> SwPageFrame * pPage) Line 1873    C++
> swlo.dll!SwLayAction::FormatContent(SwPageFrame * pPage) Line 1701    C++
> swlo.dll!SwLayAction::InternalAction(OutputDevice * pRenderContext) Line 587  
> C++
> swlo.dll!SwLayAction::Action(OutputDevice * pRenderContext) Line 386  C++
> swlo.dll!SwViewShell::ImplEndAction(const bool bIdleEnd) Line 289     C++
> swlo.dll!SwViewShell::EndAction(const bool bIdleEnd) Line 600 C++
> swlo.dll!SwCursorShell::EndAction(const bool bIdleEnd) Line 265       C++
> swlo.dll!SwEditShell::EndAllAction() Line 102 C++
> swlo.dll!SwEditShell::InsertSection(SwSectionData & rNewData, const 
> SfxItemSet * const pAttr) Line 55 C++
> swuilo.dll!SwInsertSectionTabDialog::Ok() Line 1410   C++
> sfxlo.dll!SfxTabDialogController::OkHdl(weld::Button & __formal) Line 372     
> C++
> sfxlo.dll!SfxTabDialogController::LinkStubOkHdl(void * instance, weld::Button 
> & data) Line 360        C++
> vcllo.dll!Link<weld::Button &,void>::Call(weld::Button & data) Line 111       
> C++
> vcllo.dll!weld::Button::signal_clicked() Line 1406    C++
> vcllo.dll!SalInstanceButton::ClickHdl(Button * pButton) Line 2663     C++
> vcllo.dll!SalInstanceButton::LinkStubClickHdl(void * instance, Button * data) 
> Line 2650       C++
> vcllo.dll!Link<Button *,void>::Call(Button * data) Line 111   C++
> vcllo.dll!Button::Click::__l2::<lambda>() Line 130    C++
> vcllo.dll!std::invoke<void <lambda>(void) &>(Button::Click::__l2::void 
> <lambda>(void) & _Obj) Line 1481       C++
> vcllo.dll!std::_Invoker_ret<void,1>::_Call<void <lambda>(void) 
> &>(Button::Click::__l2::void <lambda>(void) & _Func) Line 665  C++
> vcllo.dll!std::_Func_impl_no_alloc<void <lambda>(void),void>::_Do_call() Line 
> 836     C++
> vcllo.dll!std::_Func_class<void>::operator()() Line 883       C++
> vcllo.dll!Control::ImplCallEventListenersAndHandler(VclEventId nEvent, const 
> std::function<void __cdecl(void)> & callHandler) Line 313        C++
> vcllo.dll!Button::Click() Line 130    C++
> vcllo.dll!PushButton::Tracking(const TrackingEvent & rTEvt) Line 1255 C++
> vcllo.dll!vcl::Window::EndTracking(TrackingEventFlags nFlags) Line 310        
> C++
> vcllo.dll!ImplHandleMouseEvent(const VclPtr<vcl::Window> & xWindow, 
> MouseNotifyEvent nSVEvent, bool bMouseLeave, __int64 nX, __int64 nY, unsigned 
> __int64 nMsgTime, unsigned short nCode, MouseEventModifiers nMode) Line 699 
> C++
> vcllo.dll!ImplHandleSalMouseButtonUp(vcl::Window * pWindow, const 
> SalMouseEvent * pEvent) Line 2080   C++
> vcllo.dll!ImplWindowFrameProc(vcl::Window * _pWindow, SalEvent nEvent, const 
> void * pEvent) Line 2435 C++
> vcllo.dll!SalFrame::CallCallback(SalEvent nEvent, const void * pEvent) Line 
> 308       C++
> vclplug_winlo.dll!ImplHandleMouseMsg(HWND__ * hWnd, unsigned int nMsg, 
> unsigned __int64 wParam, __int64 lParam) Line 3163     C++
> vclplug_winlo.dll!SalFrameWndProc(HWND__ * hWnd, unsigned int nMsg, unsigned 
> __int64 wParam, __int64 lParam, bool & rDef) Line 5535   C++
> vclplug_winlo.dll!SalFrameWndProcW(HWND__ * hWnd, unsigned int nMsg, unsigned 
> __int64 wParam, __int64 lParam) Line 5888       C++
> user32.dll!00007ffc335ce7e8() Unknown
> user32.dll!00007ffc335ce229() Unknown
> vclplug_winlo.dll!ImplSalDispatchMessage(const tagMSG * pMsg) Line 416        
> C++
> vclplug_winlo.dll!ImplSalYield(bool bWait, bool bHandleAllCurrentEvents) Line 
> 493     C++
> vclplug_winlo.dll!WinSalInstance::DoYield(bool bWait, bool 
> bHandleAllCurrentEvents) Line 522  C++
> vcllo.dll!ImplYield(bool i_bWait, bool i_bAllEvents) Line 465 C++
> vcllo.dll!Application::Yield() Line 533       C++
> vcllo.dll!Application::Execute() Line 444     C++
> sofficeapp.dll!desktop::Desktop::Main() Line 1601     C++
> vcllo.dll!ImplSVMain() Line 199       C++
> vcllo.dll!SVMain() Line 232   C++
> sofficeapp.dll!soffice_main() Line 98 C++
> soffice.bin!sal_main() Line 49        C
> soffice.bin!main(int argc, char * * argv) Line 47     C
> soffice.bin!invoke_main() Line 79     C++
> soffice.bin!__scrt_common_main_seh() Line 288 C++
> soffice.bin!__scrt_common_main() Line 331     C++
> soffice.bin!mainCRTStartup(void * __formal) Line 17   C++
> kernel32.dll!00007ffc337f7034()       Unknown
> ntdll.dll!00007ffc33b42651()  Unknown

Since it's ICU, maybe erAck has an idea what is wrong? (Yes I know that WEBP is
not a plain text file, as LibreOffice treats it; but it must not crash it,
right? For the record: I came across it while debugging tdf#145875, which shows
insert section dialog in strange cases.)

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

Reply via email to