diff options
author | Dan Winship <danw@gnome.org> | 2010-09-10 08:51:21 -0400 |
---|---|---|
committer | Dan Winship <danw@gnome.org> | 2010-09-10 13:07:00 -0400 |
commit | 59383c8bea00b8f4bf50cf82ae9f3e7ce1df1a03 (patch) | |
tree | b20fe720237da649d9ddc4d6a081e10248f0ccdd /gio/gnetworkservice.c | |
parent | f8cb2a60b9fb79f4d3719f842d71245d844ee9c0 (diff) | |
download | glib-59383c8bea00b8f4bf50cf82ae9f3e7ce1df1a03.tar.gz |
Fix IPv6 parsing in _g_uri_parse_authority, add _g_uri_from_authority
Fixes connections to IPv6 address literals.
https://bugzilla.gnome.org/show_bug.cgi?id=629259
Diffstat (limited to 'gio/gnetworkservice.c')
-rw-r--r-- | gio/gnetworkservice.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/gio/gnetworkservice.c b/gio/gnetworkservice.c index e46126a8a..b1d934d5f 100644 --- a/gio/gnetworkservice.c +++ b/gio/gnetworkservice.c @@ -31,6 +31,7 @@ #include "ginetsocketaddress.h" #include "gioerror.h" #include "gnetworkaddress.h" +#include "gnetworkingprivate.h" #include "gresolver.h" #include "gsimpleasyncresult.h" #include "gsocketaddressenumerator.h" @@ -438,10 +439,10 @@ g_network_service_address_enumerator_next (GSocketAddressEnumerator *enumerator continue; } - uri = g_strdup_printf ("%s://%s:%u", - g_network_service_get_scheme (srv_enum->srv), - hostname, - g_srv_target_get_port (target)); + uri = _g_uri_from_authority (g_network_service_get_scheme (srv_enum->srv), + hostname, + g_srv_target_get_port (target), + NULL); g_free (hostname); addr = g_network_address_parse_uri (uri, |