[glib/wip/gmaincontext: 3/12] gsource: document priority of child sources



commit 606ad2867307f4f7148914038f03dcc1f71ab646
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.

 glib/gmain.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)
---
diff --git a/glib/gmain.c b/glib/gmain.c
index 4e72c1e..b9e80c9 100644
--- a/glib/gmain.c
+++ b/glib/gmain.c
@@ -1659,6 +1659,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,
@@ -1667,6 +1671,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]