[glib] gsource: document priority of child sources



commit 0415930b499fa951f1e82d38fc60461a8bd42c4b
Author: Ryan Lortie <desrt desrt ca>
Date:   Thu Feb 13 10:18:03 2014 -0500

    gsource: document priority of child sources
    
    Add a note to the documentation that child sources cannot have their priority
    changed independently from their parent.  Add a g_return_if_fail() to the
    public API in order to enforce this.
    
    This was already a reality due to the check in
    g_source_set_priority_unlocked(), but it was never explicitly documented.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=724706

 glib/gmain.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)
---
diff --git a/glib/gmain.c b/glib/gmain.c
index c65d24f..e74590a 100644
--- a/glib/gmain.c
+++ b/glib/gmain.c
@@ -1706,6 +1706,10 @@ g_source_set_priority_unlocked (GSource      *source,
  * source will be dispatched if it is ready to be dispatched and no
  * sources at a higher (numerically smaller) priority are ready to be
  * dispatched.
+ *
+ * A child source always has the same priority as its parent.  It is not
+ * permitted to change the priority of a source once it has been added
+ * as a child of another source.
  **/
 void
 g_source_set_priority (GSource  *source,
@@ -1714,6 +1718,7 @@ g_source_set_priority (GSource  *source,
   GMainContext *context;
 
   g_return_if_fail (source != NULL);
+  g_return_if_fail (source->priv->parent_source == NULL);
 
   context = source->context;
 


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