[libdmapsharing] Require GLib2 >= 2.36 and fix some compile warnings in tests



commit 2b9fafd7dacf2d6828146fc1b0bd9565f3f6938f
Author: W. Michael Petullo <mike flyn org>
Date:   Fri Jul 5 10:14:05 2013 -0500

    Require GLib2 >= 2.36 and fix some compile warnings in tests
    
    Signed-off-by: W. Michael Petullo <mike flyn org>

 configure.ac                           |    2 +-
 libdmapsharing/dmap-gst-input-stream.c |   36 ++++++++++++++++----------------
 tests/test-dmap-client.c               |    5 +---
 tests/test-dmap-server.c               |    3 --
 4 files changed, 20 insertions(+), 26 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 4ba31a8..3e29f64 100644
--- a/configure.ac
+++ b/configure.ac
@@ -71,7 +71,7 @@ if test "x$HAVE_PKGCONFIG" = "xno"; then
 fi
 
 dnl Check for Glib2.0
-PKG_CHECK_MODULES(GLIB, glib-2.0, HAVE_GLIB=yes,HAVE_GLIB=no)
+PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.36, HAVE_GLIB=yes,HAVE_GLIB=no)
 
 dnl Give error and exit if we don't have glib
 if test "x$HAVE_GLIB" = "xno"; then
diff --git a/libdmapsharing/dmap-gst-input-stream.c b/libdmapsharing/dmap-gst-input-stream.c
index 1bf39fc..2fded88 100644
--- a/libdmapsharing/dmap-gst-input-stream.c
+++ b/libdmapsharing/dmap-gst-input-stream.c
@@ -57,9 +57,9 @@ struct DMAPGstInputStreamPrivate
        gsize read_request;     /* Size of data asked for */
        gsize write_request;    /* Number of bytes that must be read
                                 * to make room for write */
-       GCond *buffer_read_ready;       /* Signals when buffer >= read_req. */
-       GCond *buffer_write_ready;      /* Signals when buffer not full. */
-       GMutex *buffer_mutex;   /* Protects buffer and read_request */
+       GCond buffer_read_ready;        /* Signals when buffer >= read_req. */
+       GCond buffer_write_ready;       /* Signals when buffer not full. */
+       GMutex buffer_mutex;    /* Protects buffer and read_request */
        gboolean buffer_closed; /* May close before decoding complete */
 };
 
@@ -184,7 +184,7 @@ dmap_gst_input_stream_new_buffer_cb (GstElement * element,
         * thread manipulating data after the pipeline has been destroyed.
         * see also dmap_gst_input_stream_close ().
         */
-       g_mutex_lock (stream->priv->buffer_mutex);
+       g_mutex_lock (&stream->priv->buffer_mutex);
 
        if (stream->priv->buffer_closed) {
                g_warning ("Unread data");
@@ -220,8 +220,8 @@ dmap_gst_input_stream_new_buffer_cb (GstElement * element,
        if (g_queue_get_length (stream->priv->buffer) +
            info.size > DECODED_BUFFER_SIZE) {
                stream->priv->write_request = info.size;
-               if (!g_cond_wait_until (stream->priv->buffer_write_ready,
-                                       stream->priv->buffer_mutex, end_time)) {
+               if (!g_cond_wait_until (&stream->priv->buffer_write_ready,
+                                       &stream->priv->buffer_mutex, end_time)) {
                        g_warning
                                ("Timeout waiting for buffer to empty; will drop");
                }
@@ -247,7 +247,7 @@ dmap_gst_input_stream_new_buffer_cb (GstElement * element,
        if (g_queue_get_length (stream->priv->buffer)
            >= stream->priv->read_request) {
                stream->priv->read_request = 0;
-               g_cond_signal (stream->priv->buffer_read_ready);
+               g_cond_signal (&stream->priv->buffer_read_ready);
        }
 
       _return:
@@ -259,7 +259,7 @@ dmap_gst_input_stream_new_buffer_cb (GstElement * element,
                gst_sample_unref (sample);
        }
 
-       g_mutex_unlock (stream->priv->buffer_mutex);
+       g_mutex_unlock (&stream->priv->buffer_mutex);
 }
 
 GInputStream *
@@ -312,12 +312,12 @@ dmap_gst_input_stream_read (GInputStream * stream,
 
        end_time = end_time = g_get_monotonic_time () + QUEUE_POP_WAIT_SECONDS * G_TIME_SPAN_SECOND;
 
-       g_mutex_lock (gst_stream->priv->buffer_mutex);
+       g_mutex_lock (&gst_stream->priv->buffer_mutex);
 
        gst_stream->priv->read_request = count;
        if (g_queue_get_length (gst_stream->priv->buffer) < count
-           && !g_cond_wait_until (gst_stream->priv->buffer_read_ready,
-                                  gst_stream->priv->buffer_mutex, end_time)) {
+           && !g_cond_wait_until (&gst_stream->priv->buffer_read_ready,
+                                  &gst_stream->priv->buffer_mutex, end_time)) {
                /* Timeout: Count is now what's remaining.  Let's hope
                 * we have enough of a lead on encoding so that this one
                 * second timeout will go unnoticed.
@@ -340,10 +340,10 @@ dmap_gst_input_stream_read (GInputStream * stream,
                gst_stream->priv->write_request = 0;
 
        if (gst_stream->priv->write_request <= 0) {
-               g_cond_signal (gst_stream->priv->buffer_write_ready);
+               g_cond_signal (&gst_stream->priv->buffer_write_ready);
        }
 
-       g_mutex_unlock (gst_stream->priv->buffer_mutex);
+       g_mutex_unlock (&gst_stream->priv->buffer_mutex);
 
        return count;
 }
@@ -371,12 +371,12 @@ dmap_gst_input_stream_close (GInputStream * stream,
 
        dmap_gst_input_stream_kill_pipeline (gst_stream);
 
-       g_mutex_lock (gst_stream->priv->buffer_mutex);
+       g_mutex_lock (&gst_stream->priv->buffer_mutex);
 
        g_queue_free (gst_stream->priv->buffer);
        gst_stream->priv->buffer_closed = TRUE;
 
-       g_mutex_unlock (gst_stream->priv->buffer_mutex);
+       g_mutex_unlock (&gst_stream->priv->buffer_mutex);
 
        return TRUE;
 }
@@ -465,11 +465,11 @@ dmap_gst_input_stream_init (DMAPGstInputStream * stream)
        stream->priv->buffer_closed = FALSE;
 
        // FIXME: Never g_mutex_clear'ed:
-       g_mutex_init (stream->priv->buffer_mutex);
+       g_mutex_init (&stream->priv->buffer_mutex);
 
        // FIXME: Never g_cond_clear'ed:
-       g_cond_init (stream->priv->buffer_read_ready);
-       g_cond_init (stream->priv->buffer_write_ready);
+       g_cond_init (&stream->priv->buffer_read_ready);
+       g_cond_init (&stream->priv->buffer_write_ready);
 }
 
 G_DEFINE_TYPE_WITH_CODE (DMAPGstInputStream, dmap_gst_input_stream,
diff --git a/tests/test-dmap-client.c b/tests/test-dmap-client.c
index 8730177..5cc8add 100644
--- a/tests/test-dmap-client.c
+++ b/tests/test-dmap-client.c
@@ -115,7 +115,7 @@ service_added_cb (DMAPMdnsBrowser *browser,
         }
         conn = DMAP_CONNECTION (dpap_connection_new (service->name, service->host, service->port, db, 
factory));
     }
-    g_signal_connect (DMAP_CONNECTION (conn), "authenticate", (DMAPConnectionCallback) authenticate_cb, 
NULL);
+    g_signal_connect (DMAP_CONNECTION (conn), "authenticate", G_CALLBACK(authenticate_cb), NULL);
     dmap_connection_connect (DMAP_CONNECTION (conn), (DMAPConnectionCallback) connected_cb, db);
 }
 
@@ -127,9 +127,6 @@ int main(int argc, char **argv)
     if (argc == 2)
         conn_type = atoi (argv[1]);
 
-    g_type_init ();
-    g_thread_init (NULL);
-
     loop = g_main_loop_new (NULL, FALSE);
 
     if (conn_type == DAAP)
diff --git a/tests/test-dmap-server.c b/tests/test-dmap-server.c
index ab10dbd..7c3f539 100644
--- a/tests/test-dmap-server.c
+++ b/tests/test-dmap-server.c
@@ -106,9 +106,6 @@ main (int argc, char *argv[])
        if (argc == 2)
                conn_type = atoi (argv[1]);
 
-       g_type_init ();
-       g_thread_init (NULL);
-
        loop = g_main_loop_new (NULL, FALSE);
 
        create_share (conn_type);


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