RESOLVED FIXED34980
[GTK] Crashes when starting download of data: URL with unknown mime type
https://bugs.webkit.org/show_bug.cgi?id=34980
Summary [GTK] Crashes when starting download of data: URL with unknown mime type
Gustavo Noronha (kov)
Reported 2010-02-16 13:03:37 PST
How to reproduce: epiphany-browser -p 'data:foo/bar;baz,' Trace: #4 <signal handler called> No symbol table info available. #5 0x00007f409a9d7a08 in parseDataUrl (callback_data=<value optimized out>) at ../WebCore/platform/network/soup/ResourceHandleSoup.cpp:407 handle = 0x7f4085d041c8 client = 0x7f4085d03b00 d = 0x7f4085bf9800 url = {m_impl = {<WTF::FastAllocBase> = {<No data fields>}, m_ptr = 0x7f40886b5f78}} index = <value optimized out> mediaType = {m_impl = {<WTF::FastAllocBase> = {<No data fields>}, m_ptr = 0x7f4085c96e00}} data = {m_impl = {<WTF::FastAllocBase> = {<No data fields>}, m_ptr = 0x7f40885d33e0}} isBase64 = false mimeType = {m_impl = {<WTF::FastAllocBase> = {<No data fields>}, m_ptr = 0x7f4085b1a6c0}} charset = {m_impl = {<WTF::FastAllocBase> = {<No data fields>}, m_ptr = 0x0}} response = {<WebCore::ResourceResponseBase> = {m_url = {m_string = { m_impl = {<WTF::FastAllocBase> = {<No data fields>}, m_ptr = 0x0}}, m_isValid = false, m_protocolInHTTPFamily = false, m_schemeEnd = 0, m_userStart = 0, m_userEnd = 0, m_passwordEnd = 0, m_hostEnd = 0, m_portEnd = 0, m_pathAfterLastSlash = 0, m_pathEnd = 0, m_queryEnd = 0, m_fragmentEnd = 0}, m_mimeType = { m_impl = {<WTF::FastAllocBase> = {<No data fields>}, m_ptr = 0x7f4085b1a6c0}}, m_expectedContentLength = 0, m_textEncodingName = { m_impl = {<WTF::FastAllocBase> = {<No data fields>}, m_ptr = 0x7f4085b1c030}}, m_suggestedFilename = { m_impl = {<WTF::FastAllocBase> = {<No data fields>}, m_ptr = 0x0}}, m_httpStatusCode = 0, m_httpStatusText = { m_impl = {<WTF::FastAllocBase> = {<No data fields>}, m_ptr = 0x0}}, m_httpHeaderFields = {<WTF::HashMap<WebCore::AtomicString, WebCore::String, WebCore::CaseFoldingHash, WTF::HashTraits<WebCore::AtomicString>, WTF::HashTraits<WebCore::String> >> = {<WTF::FastAllocBase> = {<No data fields>}, m_impl = {static m_minTableSize = <optimized out>, static m_maxLoad = <optimized out>, static m_minLoad = <optimized out>, m_table = 0x0, m_tableSize = 0, m_tableSizeMask = 0, m_keyCount = 0, m_deletedCount = 0}}, <No data fields>}, m_lastModifiedDate = 0, m_isNull = false, m_haveParsedCacheControlHeader = false, m_haveParsedAgeHeader = false, m_haveParsedDateHeader = false, m_haveParsedExpiresHeader = false, m_haveParsedLastModifiedHeader = false, m_cacheControlContainsNoCache = false, m_cacheControlContainsNoStore = false, m_cacheControlContainsMustRevalidate = false, m_cacheControlMaxAge = 0, m_age = 0, m_date = 0, m_expires = 0, m_lastModified = 0}, <No data fields>} #6 0x00007f4097f7c8fe in g_main_dispatch (context=0x721e10) at /build/buildd/glib2.0-2.22.3/glib/gmain.c:1960 dispatch = 0x7f4097f7aac0 <g_idle_dispatch> user_data = 0x7f4085d041c8 callback = 0x7f409a9d75c0 <parseDataUrl> cb_funcs = 0x7f4098205e50 cb_data = 0x833250 current_source_link = {data = 0x1591000, next = 0x0} source = 0x1591000 current = 0x762020 i = 2 #7 IA__g_main_context_dispatch (context=0x721e10) at /build/buildd/glib2.0-2.22.3/glib/gmain.c:2513 #8 0x00007f4097f802b8 in g_main_context_iterate (context=0x721e10, block=<value optimized out>, dispatch=<value optimized out>, self=<value optimized out>) at /build/buildd/glib2.0-2.22.3/glib/gmain.c:2591 #9 0x00007f4097f80715 in IA__g_main_loop_run (loop=0x7cd2a0) at /build/buildd/glib2.0-2.22.3/glib/gmain.c:2799 #10 0x00007f409981ef87 in IA__gtk_main () at /build/buildd-gtk+2.0_2.18.5-1-amd64-Nathc9/gtk+2.0-2.18.5/gtk/gtkmain.c:1218 #11 0x0000000000434250 in main (argc=1, argv=0x7fff55448e68) at /epiphany-browser-2.29.3/src/ephy-main.c:780
Attachments
Protect the relevant object in parseDataUrl (5.80 KB, patch)
2010-02-16 13:05 PST, Gustavo Noronha (kov)
xan.lopez: review+
xan.lopez: commit-queue-
Gustavo Noronha (kov)
Comment 1 2010-02-16 13:05:03 PST
Created attachment 48818 [details] Protect the relevant object in parseDataUrl It's a bit messy, but I couldn't figure out a better way of avoiding the bug.
Xan Lopez
Comment 2 2010-02-17 05:00:30 PST
Comment on attachment 48818 [details] Protect the relevant object in parseDataUrl r=me
Gustavo Noronha (kov)
Comment 3 2010-02-17 05:42:13 PST
Landed as r54885.
Note You need to log in before you can comment on or make changes to this bug.