[glib] Fix invalid reads



commit fa671dc5e28369c50aaef525c6980803a9946471
Author: Christian Persch <chpe gnome org>
Date:   Mon Aug 30 10:21:43 2010 -0400

    Fix invalid reads
    
    Don't use a guint16* when getting a guint property via g_object_get()!
    
    Bug #628323.

 gio/gproxyaddressenumerator.c |    5 ++++-
 gio/tests/network-address.c   |    2 +-
 2 files changed, 5 insertions(+), 2 deletions(-)
---
diff --git a/gio/gproxyaddressenumerator.c b/gio/gproxyaddressenumerator.c
index 7630897..29604dc 100644
--- a/gio/gproxyaddressenumerator.c
+++ b/gio/gproxyaddressenumerator.c
@@ -627,13 +627,16 @@ g_proxy_address_enumerator_set_property (GObject        *object,
 		conn = g_network_address_parse_uri (uri, 0, NULL);
 		if (conn)
 		  {
+		    guint port;
+
 		    priv->dest_uri = g_strdup (uri);
 		    
 		    g_object_get (conn,
 				  "hostname", &priv->dest_hostname,
-				  "port", &priv->dest_port,
+				  "port", &port,
 				  NULL);
 
+		    priv->dest_port = port;
 		    g_object_unref (conn);
 		  }
 		else
diff --git a/gio/tests/network-address.c b/gio/tests/network-address.c
index 42b6079..e8cf513 100644
--- a/gio/tests/network-address.c
+++ b/gio/tests/network-address.c
@@ -4,7 +4,7 @@ static void
 test_basic (void)
 {
   GNetworkAddress *address;
-  guint16 port;
+  guint port;
   gchar *hostname;
 
   address = (GNetworkAddress*)g_network_address_new ("www.gnome.org", 8080);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]