]> spindle.queued.net Git - midori/commitdiff
Add a function to obtain the session from a net
authorChristian Dywan <christian@twotoasts.de>
Thu, 15 Jan 2009 02:26:15 +0000 (03:26 +0100)
committerChristian Dywan <christian@twotoasts.de>
Thu, 15 Jan 2009 02:26:15 +0000 (03:26 +0100)
katze/katze-net.c
katze/katze-net.h
katze/katze-throbber.c

index 363ad9d15cb23c38fc9d9f953c1aa930ab924f76..cf169c15837f6b4bc0eef5d352658ddeb185f769 100644 (file)
@@ -101,13 +101,38 @@ katze_net_new (void)
     static KatzeNet* net = NULL;
 
     if (!net)
+    {
         net = g_object_new (KATZE_TYPE_NET, NULL);
+        /* Since this is a "singleton", keep an extra reference */
+        g_object_ref (net);
+    }
     else
         g_object_ref (net);
 
     return net;
 }
 
+/**
+ * katze_net_get_session:
+ *
+ * Retrieves the session of the net.
+ *
+ * Return value: a session, or %NULL
+ *
+ * Since: 0.1.3
+ **/
+gpointer
+katze_net_get_session (KatzeNet* net)
+{
+    g_return_val_if_fail (KATZE_IS_NET (net), NULL);
+
+    #if HAVE_LIBSOUP
+    return net->session;
+    #else
+    return NULL;
+    #endif
+}
+
 typedef struct
 {
     KatzeNet* net;
index 0da0c2870cc6994423eedcbe631f925fbac50eb4..13f502663fe7dca9a9c0fab9a6520eee08201cda 100644 (file)
@@ -40,6 +40,9 @@ katze_net_get_type                       (void);
 KatzeNet*
 katze_net_new                            (void);
 
+gpointer
+katze_net_get_session                    (KatzeNet*          net);
+
 typedef enum
 {
     KATZE_NET_VERIFIED,
index faaea53ab5fa74669f5214281d2ad2ae8ae34817..0698ccb0cc18981b80d7d488148991d259e31a31 100644 (file)
@@ -35,7 +35,7 @@ struct _KatzeThrobber
     gint height;
 };
 
-G_DEFINE_TYPE (KatzeThrobber, katze_throbber, GTK_TYPE_MISC)
+G_DEFINE_TYPE (KatzeThrobber, katze_throbber, GTK_TYPE_MISC);
 
 enum
 {