After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 590524 - fix up some illegal URLs
fix up some illegal URLs
Status: RESOLVED FIXED
Product: libsoup
Classification: Core
Component: Misc
2.27.x
Other All
: High minor
: ---
Assigned To: libsoup-maint@gnome.bugs
libsoup-maint@gnome.bugs
: 575153 594596 609731 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2009-08-02 13:17 UTC by Rod Butcher
Modified: 2010-02-15 14:59 UTC
See Also:
GNOME target: ---
GNOME version: 2.27/2.28



Description Rod Butcher 2009-08-02 13:17:36 UTC
Version: 2.27.5

What were you doing when the application crashed?
displayed http://vodafone.com.au, then it crashes


Distribution: Mandriva Linux release 2008.1 (Official) for x86_64
Gnome Release: 2.27.5 2009-08-02 (GNOME.Org)
BugBuddy Version: 2.25.2

System: Linux 2.6.24.4-desktop-1mnb #1 SMP Thu Mar 27 14:33:51 CET 2008 x86_64
X Vendor: The X.Org Foundation
X Vendor Release: 10400090
Selinux: No
Accessibility: Disabled
GTK+ Theme: Clearlooks-Olive
Icon Theme: Gorilla
GTK+ Modules: gnomebreakpad

Memory status: size: 610037760 vsize: 610037760 resident: 81010688 share: 26562560 rss: 81010688 rss_rlim: 18446744073709551615
CPU usage: start_time: 1249218944 rtime: 661 utime: 616 stime: 45 cutime:0 cstime: 0 timeout: 0 it_real_value: 0 frequency: 100

Backtrace was generated from '/usr/bin/epiphany'

Using host libthread_db library "/lib64/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread 47301441898896 (LWP 14970)]
0x00002b053610782f in waitpid () from /lib64/libpthread.so.0

Thread 1 (Thread 47301441898896 (LWP 14970))

  • #0 waitpid
    from /lib64/libpthread.so.0
  • #1 IA__g_spawn_sync
    at ../../glib/gspawn.c line 382
  • #2 IA__g_spawn_command_line_sync
    at ../../glib/gspawn.c line 694
  • #3 run_bug_buddy
    at gnome-breakpad.cc line 369
  • #4 check_if_gdb
    at gnome-breakpad.cc line 440
  • #5 bugbuddy_segv_handle
    at gnome-breakpad.cc line 223
  • #6 <signal handler called>
  • #7 soup_uri_free
    at soup-uri.c line 543
  • #8 WebCore::ResourceHandle::start
    at ../WebCore/platform/network/soup/ResourceHandleSoup.cpp line 587
  • #9 WebCore::ResourceHandle::create
    at ../WebCore/platform/network/ResourceHandle.cpp line 65
  • #10 WebCore::ResourceLoader::load
    at ../WebCore/loader/ResourceLoader.cpp line 131
  • #11 WebCore::SubresourceLoader::create
    at ../WebCore/loader/SubresourceLoader.cpp line 101
  • #12 WebCore::Loader::Host::servePendingRequests
    at ../WebCore/loader/loader.cpp line 322
  • #13 WebCore::Loader::Host::servePendingRequests
    at ../WebCore/loader/loader.cpp line 281
  • #14 WebCore::Loader::load
    at ../WebCore/loader/loader.cpp line 121
  • #15 WebCore::CachedResource::load
    at ../WebCore/loader/CachedResource.cpp line 110
  • #16 WebCore::Cache::requestResource
    at ../WebCore/loader/Cache.cpp line 123
  • #17 WebCore::DocLoader::requestResource
    at ../WebCore/loader/DocLoader.cpp line 216
  • #18 WebCore::DocLoader::requestImage
    at ../WebCore/loader/DocLoader.cpp line 123
  • #19 WebCore::ImageLoader::updateFromElement
    at ../WebCore/loader/ImageLoader.cpp line 130
  • #20 WebCore::HTMLImageElement::parseMappedAttribute
    at ../WebCore/html/HTMLImageElement.cpp line 87
  • #21 WebCore::StyledElement::attributeChanged
    at ../WebCore/dom/StyledElement.cpp line 195
  • #22 WebCore::NamedNodeMap::addAttribute
    at ../WebCore/dom/NamedAttrMap.cpp line 256
  • #23 WebCore::Element::setAttribute
    at ../WebCore/dom/Element.cpp line 580
  • #24 WebCore::Element::setAttribute
    at ../WebCore/dom/Element.cpp line 128
  • #25 WebCore::setJSHTMLImageElementSrc
    at DerivedSources/JSHTMLImageElement.cpp line 351
  • #26 WebCore::JSHTMLImageElement::put
    at ../JavaScriptCore/runtime/Lookup.h line 245
  • #27 cti_op_put_by_id
    at ../JavaScriptCore/runtime/JSObject.h line 596
  • #28 ??
  • #29 ??
  • #0 waitpid
    from /lib64/libpthread.so.0


----------- .xsession-errors (84792 sec old) ---------------------
(filezilla:20357): Gtk-WARNING **: gtkwidget.c:9412: widget class `GtkPizza' has no property named `row-ending-details'
(filezilla:20357): Gtk-WARNING **: gtkwidget.c:9412: widget class `GtkPizza' has no property named `row-ending-details'
(filezilla:20357): Gtk-WARNING **: gtkwidget.c:9412: widget class `GtkPizza' has no property named `row-ending-details'
(filezilla:20357): Gtk-WARNING **: gtkwidget.c:9412: widget class `GtkPizza' has no property named `row-ending-details'
(filezilla:20357): Gtk-WARNING **: gtkwidget.c:9412: widget class `GtkPizza' has no property named `row-ending-details'
(filezilla:20357): Gtk-WARNING **: gtkwidget.c:9412: widget class `GtkPizza' has no property named `row-ending-details'
(filezilla:20357): Gtk-WARNING **: gtkwidget.c:9412: widget class `GtkPizza' has no property named `row-ending-details'
...Too much output, ignoring rest...
--------------------------------------------------
Comment 1 Xan Lopez 2009-08-02 14:48:48 UTC
I can't reproduce here. What version of libsoup are you using? Also, if you can reproduce, could you tell me what is being passed to 'soup_uri_new' in ResourceHandle::start? (Since apparently SoupURI is failing to construct an object from that URI).
Comment 2 Rod Butcher 2009-08-03 11:41:10 UTC
Libsoup 2.27.5

Is this what you want ? :

Breakpoint 2, soup_uri_new (
    uri_string=0x7f50aa30c100 "http://info.vodafone.com.au/b/ss/vdaglobal,vdapersonal/1/H.19.3/s57856003566751?AQB=1&ndh=1&t=3/7/2009%2021%3A20%3A44%201%20-600&ce=ISO-8859-1&ns=vodafoneaustralia&cdp=3&pageName=vcap%3Ahome&g=http%3A"...) at ../../libsoup/soup-uri.c:389
389             if (!uri_string)
(gdb) continue
Continuing.

Program received signal SIGSEGV, Segmentation fault.
0x00007f50bec63911 in soup_uri_free (uri=0x0) at ../../libsoup/soup-uri.c:543
543             g_free (uri->user);
Comment 3 Xan Lopez 2009-08-07 16:51:24 UTC
This shouldn't crash anymore with the latest WebKitGTK+ release, 1.1.12, since that code (which was a workaround for older libsoup versions) was removed.
Comment 4 Rod Butcher 2009-08-09 16:37:33 UTC
This happened using WebkitGTK 1.1.12
Comment 5 Xan Lopez 2009-08-09 16:59:18 UTC
My bad, I was looking at the wrong place. We need to add a check in that function for malformed URIs then. Reopening this... (although the bug is upstream).
Comment 6 Dan Winship 2009-08-10 13:30:42 UTC
would be interesting to see the complete uri_string arg to soup_uri_new() there. ("set print elements 0" will tell gdb to not truncate strings)
Comment 7 Xan Lopez 2009-08-10 21:04:52 UTC
This is fixed in WebKitGTK+ r46983 now, will be available in 1.1.13 (still would be nice to see the full URI as Dan asks).
Comment 8 Rod Butcher 2009-08-11 06:20:54 UTC
Here's the full string : 

Breakpoint 1, soup_uri_new (
    uri_string=0x7fad810b0680 "http://info.vodafone.com.au/b/ss/vdaglobal,vdapersonal/1/H.19.3/s85923738810285?AQB=1&ndh=1&t=11/7/2009%2016%3A18%3A14%202%20-600&ce=ISO-8859-1&ns=vodafoneaustralia&cdp=3&pageName=vcap%3Ahome&g=http%3A//vodafone.com.au/personal/index.htm&cc=AUD&ch=vcap%3Ahome&server=vodafone.com.au&v0=typed%3Abookmarked&events=event8&c1=home-personal&v1=home-personal&h1=vcap%7Chome&c2=aus&v2=aus&c3=vcap&v3=vcap&c4=vcap%3Ahome&v4=vcap%3Ahome&c5=vcap%3Ahome&v5=vcap%3Ahome&c6=vcap%3Ahome&v6=vcap%3Ahome&v7=vcap%3Ahome&c9=vodafone%20australia%3A%20mobile%20phones%2C%20internet%2C%20broadband%20%26%20email&c10=20090512V1B&c11=auto&v15=auto&v18=repeat&c20=to%20be%20defined&c24=repeat&c25=vcap&v25=%3F&c26=vcap%3Aundefined&v26=%3F&c27=http%3A//vodafone.com.au/personal/index.htm&v27=%3F&c28=4%3A00PM&v28=4%3A00PM&c29=Tuesday&v29=Tuesday&v41=typed%3Abookmarked%3Einternal%3Etyped%3Abookmarked%3Einternal%3Etyped%3Abookmarked&v44=typed%3Abookmarked&s=1440x900&c=24&j=1.6&v=N&k=Y&bw=1410&bh=716&p=Windows%20Media%20Player%20Plug-in%2010%20%28compatible%3B%20Totem%29%3BHelix%20DNA%20Plugin%3A%20RealPlayer%20G2%20Plug-In%20Compatible%20%28compatible%3B%20Totem%29%3BShockwave%20Flash%3BDivX%u00C2%AE%20Web%20Player%3BVLC%20Multimedia%20Plugin%20%28compatible%20Totem%202.27.2%29%3BQuickTime%20Plug-in%207.2.0%3BScalable%20Vector%20Graphics%3B&AQE=1") at ../../libsoup/soup-uri.c:389          
389             if (!uri_string)                                                                                                                            
(gdb)                                                                                                                                                       
Continuing.                                                                                                                                                 

Program received signal SIGSEGV, Segmentation fault.

0x00007fad97afe911 in soup_uri_free (uri=0x0) at ../../libsoup/soup-uri.c:543
543             g_free (uri->user);                          
Comment 9 Dan Winship 2009-08-11 12:38:16 UTC
...%3BDivX%u00C2%AE%20Web%20Player...

"%u00C2" is illegal. Firefox seems to silently accept it (and not even rewrite the % to %25 in the URL bar).
Comment 10 Rod Butcher 2009-09-01 02:14:44 UTC
I have successfully tested epiphany 2.27.91 using webkitgtk-1.1.13 & libsoup-2.27.91. It now handles the weird URL OK.
Comment 11 Dan Winship 2009-09-02 14:36:20 UTC
(In reply to comment #10)
> I have successfully tested epiphany 2.27.91 using webkitgtk-1.1.13 &
> libsoup-2.27.91. It now handles the weird URL OK.

right, webkitgtk is now handling this itself. (but eventually we want libsoup to handle it as well, so leaving this bug open)
Comment 12 Dan Winship 2009-12-19 14:42:35 UTC
http://code.google.com/p/curlies/wiki/RecommendationsForBrowserDevelopers has various notes on parsing URLs, though it doesn't mention handling bad-%-encoding
Comment 13 Dan Winship 2009-12-19 14:43:30 UTC
*** Bug 594596 has been marked as a duplicate of this bug. ***
Comment 14 Dan Winship 2009-12-19 14:44:30 UTC
*** Bug 575153 has been marked as a duplicate of this bug. ***
Comment 15 Dan Winship 2010-02-14 23:45:04 UTC
*** Bug 609731 has been marked as a duplicate of this bug. ***
Comment 16 Dan Winship 2010-02-14 23:49:07 UTC
fixed in git
Comment 17 Pacho Ramos 2010-02-15 14:59:17 UTC
Thanks