[rygel-gst-0-10-plugins] Add some more checks.



commit 0ed4df6a86c8cae30231bf62612aa38fa7690ac6
Author: Krzesimir Nowak <krnowak openismus com>
Date:   Mon Feb 11 11:22:46 2013 +0100

    Add some more checks.

 .../rygel-media-export-leaf-query-container.c      |    4 ++++
 src/media-export/rygel-media-export-media-cache.c  |    1 +
 .../rygel-media-export-query-container-factory.c   |    6 ++++++
 3 files changed, 11 insertions(+), 0 deletions(-)
---
diff --git a/src/media-export/rygel-media-export-leaf-query-container.c b/src/media-export/rygel-media-export-leaf-query-container.c
index d20848c..45c6ccb 100644
--- a/src/media-export/rygel-media-export-leaf-query-container.c
+++ b/src/media-export/rygel-media-export-leaf-query-container.c
@@ -29,6 +29,10 @@ RygelMediaExportLeafQueryContainer*
 rygel_media_export_leaf_query_container_new (RygelSearchExpression *expression,
                                              const gchar           *id,
                                              const gchar           *name) {
+  g_return_val_if_fail (RYGEL_IS_SEARCH_EXPRESSION (expression), NULL);
+  g_return_val_if_fail (id != NULL, NULL);
+  g_return_val_if_fail (name != NULL, NULL);
+
   return RYGEL_MEDIA_EXPORT_LEAF_QUERY_CONTAINER (g_object_new (RYGEL_MEDIA_EXPORT_TYPE_LEAF_QUERY_CONTAINER,
                                                                 "id", id,
                                                                 "title", name,
diff --git a/src/media-export/rygel-media-export-media-cache.c b/src/media-export/rygel-media-export-media-cache.c
index e5cbe6e..e371a80 100644
--- a/src/media-export/rygel-media-export-media-cache.c
+++ b/src/media-export/rygel-media-export-media-cache.c
@@ -1651,6 +1651,7 @@ rygel_media_export_media_cache_translate_search_expression (RygelSearchExpressio
   gchar* filter;
   GError *inner_error;
 
+  g_return_val_if_fail (expression == NULL || RYGEL_IS_SEARCH_EXPRESSION (expression), NULL);
   g_return_val_if_fail (args != NULL, NULL);
   g_return_val_if_fail (prefix != NULL, NULL);
 
diff --git a/src/media-export/rygel-media-export-query-container-factory.c b/src/media-export/rygel-media-export-query-container-factory.c
index c099b74..599e38b 100644
--- a/src/media-export/rygel-media-export-query-container-factory.c
+++ b/src/media-export/rygel-media-export-query-container-factory.c
@@ -310,6 +310,11 @@ rygel_media_export_query_container_factory_parse_description (const gchar  *desc
     g_free (local_attribute);
     local_attribute = g_uri_unescape_string (tmp_attribute, NULL);
     g_free (tmp_attribute);
+    if (i + 1 == args_length) {
+      /* i is always even - incremented by 2 after every iteration. */
+      g_warning ("Count of args in description should be even.");
+      g_free (local_attribute);
+    }
     if (g_strcmp0 (args[i + 1], "?")) {
       rygel_media_export_query_container_factory_update_search_expression (&expression, args[i], args[i + 1]);
       if ((i + 2) == args_length) {
@@ -374,6 +379,7 @@ rygel_media_export_query_container_factory_update_search_expression (RygelSearch
   GError *error;
 
   g_return_if_fail (expression != NULL);
+  g_return_if_fail (*expression == NULL || RYGEL_IS_SEARCH_EXPRESSION (*expression));
   g_return_if_fail (key != NULL);
   g_return_if_fail (value != NULL);
 


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