RESOLVED FIXED 172009
[WinCairo] ASSERTION FAILED: !frameIsCompleteAtIndex(index) || !frameHasDecodedNativeImageCompatibleWithOptionsAtIndex(index, subsamplingLevel, decodingOptions)
https://bugs.webkit.org/show_bug.cgi?id=172009
Summary [WinCairo] ASSERTION FAILED: !frameIsCompleteAtIndex(index) || !frameHasDecod...
Fujii Hironori
Reported 2017-05-11 19:29:01 PDT
I see the following assertion failure at some web sites. > ASSERTION FAILED: !frameIsCompleteAtIndex(index) || !frameHasDecodedNativeImageCompatibleWithOptionsAtIndex(index, subsamplingLevel, decodingOptions) > C:\webkit\ga\Source\WebCore\platform\graphics\ImageFrameCache.cpp(250) : WebCore::ImageFrameCache::cacheAsyncFrameNativeImageAtIndex Callstack: > WTF.dll!WTFCrash() Line 292 C++ > WebKit.dll!WebCore::ImageFrameCache::cacheAsyncFrameNativeImageAtIndex(WTF::RefPtr<_cairo_surface> && nativeImage, unsigned __int64 index, WebCore::SubsamplingLevel subsamplingLevel, const WebCore::DecodingOptions & decodingOptions) Line 250 C++ > WebKit.dll!WebCore::ImageFrameCache::startAsyncDecodingQueue::__l2::void <lambda>(void)::__l4::<lambda>() Line 301 C++ > WebKit.dll!WTF::Function<void __cdecl(void)>::CallableWrapper<void <lambda>(void) >::call() Line 89 C++ > WTF.dll!WTF::Function<void __cdecl(void)>::operator()() Line 52 C++ > WTF.dll!WTF::dispatchFunctionsFromMainThread() Line 131 C++ > WTF.dll!WTF::ThreadingWindowWndProc(HWND__ * hWnd, unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 47 C++ > [External Code] > WebKit.dll!WebKitMessageLoop::run(HACCEL__ * hAccelTable) Line 97 C++ > MiniBrowserLib.dll!wWinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, wchar_t * lpstrCmdLine, int nCmdShow) Line 189 C++ > MiniBrowserLib.dll!dllLauncherEntryPoint(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, wchar_t * lpstrCmdLine, int nCmdShow) Line 857 C++ > MiniBrowser.exe!wWinMain(HINSTANCE__ * hInstance, HINSTANCE__ * hPrevInstance, wchar_t * lpstrCmdLine, int nCmdShow) Line 249 C++ > [External Code] I tested with WinCairo port, debug build, trunk@216673. https://play.google.com/ https://www.sony.co.jp/
Attachments
WIP patch (1.41 KB, patch)
2017-05-11 21:43 PDT, Fujii Hironori
no flags
Fujii Hironori
Comment 1 2017-05-11 21:43:09 PDT
Created attachment 309864 [details] WIP patch I think this patch solves the problem. How do you think, Said?
Said Abou-Hallawa
Comment 2 2017-05-12 09:46:44 PDT
I am not sure how you verified your patch. The async image decoding for large images has been disabled for almost two weeks now and the animated images does not start decoding until all the data is received. The change <http://trac.webkit.org/changeset/216471> caused another regression which is being addressed in https://bugs.webkit.org/show_bug.cgi?id=171900. I suggested in the attached patch removing this particular assertion for now. I suggested also changing function ImageFrameCache::requestFrameAsyncDecodingAtIndex() to let the caller decide whether async image decoding is needed or not.
Fujii Hironori
Comment 3 2017-05-15 19:43:40 PDT
I don't see this assertion failure after fixing bug 171900. Thank you.
Note You need to log in before you can comment on or make changes to this bug.