Update the year in the *.rc.in files
[platform/upstream/glib.git] / gio / gsimpleasyncresult.c
index db44600..4fd5da7 100644 (file)
@@ -299,10 +299,9 @@ g_simple_async_result_init (GSimpleAsyncResult *simple)
 
 /**
  * g_simple_async_result_new:
- * @source_object: a #GObject the asynchronous function was called with,
- * or %NULL.
- * @callback: a #GAsyncReadyCallback.
- * @user_data: user data passed to @callback.
+ * @source_object: (allow-none): a #GObject, or %NULL.
+ * @callback: (scope async): a #GAsyncReadyCallback.
+ * @user_data: (closure): user data passed to @callback.
  * @source_tag: the asynchronous function.
  *
  * Creates a #GSimpleAsyncResult.
@@ -333,9 +332,9 @@ g_simple_async_result_new (GObject             *source_object,
 
 /**
  * g_simple_async_result_new_from_error:
- * @source_object: a #GObject, or %NULL.
- * @callback: a #GAsyncReadyCallback.
- * @user_data: user data passed to @callback.
+ * @source_object: (allow-none): a #GObject, or %NULL.
+ * @callback: (scope async): a #GAsyncReadyCallback.
+ * @user_data: (closure): user data passed to @callback.
  * @error: a #GError
  *
  * Creates a #GSimpleAsyncResult from an error condition.
@@ -361,10 +360,10 @@ g_simple_async_result_new_from_error (GObject             *source_object,
 }
 
 /**
- * g_simple_async_result_new_take_error:
+ * g_simple_async_result_new_take_error: (skip)
  * @source_object: (allow-none): a #GObject, or %NULL
- * @callback: a #GAsyncReadyCallback
- * @user_data: (allow-none): user data passed to @callback
+ * @callback: (scope async): a #GAsyncReadyCallback
+ * @user_data: (closure): user data passed to @callback
  * @error: a #GError
  *
  * Creates a #GSimpleAsyncResult from an error condition, and takes over the
@@ -394,9 +393,9 @@ g_simple_async_result_new_take_error (GObject             *source_object,
 
 /**
  * g_simple_async_result_new_error:
- * @source_object: a #GObject, or %NULL.
- * @callback: a #GAsyncReadyCallback.
- * @user_data: user data passed to @callback.
+ * @source_object: (allow-none): a #GObject, or %NULL.
+ * @callback: (scope async): a #GAsyncReadyCallback.
+ * @user_data: (closure): user data passed to @callback.
  * @domain: a #GQuark.
  * @code: an error code.
  * @format: a string with format characters.
@@ -489,7 +488,7 @@ g_simple_async_result_get_source_tag (GSimpleAsyncResult *simple)
 /**
  * g_simple_async_result_propagate_error:
  * @simple: a #GSimpleAsyncResult.
- * @dest: a location to propegate the error to.
+ * @dest: (out): a location to propagate the error to.
  *
  * Propagates an error from within the simple asynchronous result to
  * a given destination.
@@ -513,7 +512,7 @@ g_simple_async_result_propagate_error (GSimpleAsyncResult  *simple,
 }
 
 /**
- * g_simple_async_result_set_op_res_gpointer:
+ * g_simple_async_result_set_op_res_gpointer: (skip)
  * @simple: a #GSimpleAsyncResult.
  * @op_res: a pointer result from an asynchronous function.
  * @destroy_op_res: a #GDestroyNotify function.
@@ -632,7 +631,7 @@ g_simple_async_result_set_from_error (GSimpleAsyncResult *simple,
 }
 
 /**
- * g_simple_async_result_take_error:
+ * g_simple_async_result_take_error: (skip)
  * @simple: a #GSimpleAsyncResult
  * @error: a #GError
  *
@@ -655,7 +654,7 @@ g_simple_async_result_take_error (GSimpleAsyncResult *simple,
 }
 
 /**
- * g_simple_async_result_set_error_va:
+ * g_simple_async_result_set_error_va: (skip)
  * @simple: a #GSimpleAsyncResult.
  * @domain: a #GQuark (usually #G_IO_ERROR).
  * @code: an error code.
@@ -683,7 +682,7 @@ g_simple_async_result_set_error_va (GSimpleAsyncResult *simple,
 }
 
 /**
- * g_simple_async_result_set_error:
+ * g_simple_async_result_set_error: (skip)
  * @simple: a #GSimpleAsyncResult.
  * @domain: a #GQuark (usually #G_IO_ERROR).
  * @code: an error code.
@@ -745,9 +744,13 @@ g_simple_async_result_complete (GSimpleAsyncResult *simple)
 #endif
 
   if (simple->callback)
-    simple->callback (simple->source_object,
-                     G_ASYNC_RESULT (simple),
-                     simple->user_data);
+    {
+      g_main_context_push_thread_default (simple->context);
+      simple->callback (simple->source_object,
+                       G_ASYNC_RESULT (simple),
+                       simple->user_data);
+      g_main_context_pop_thread_default (simple->context);
+    }
 }
 
 static gboolean
@@ -851,11 +854,11 @@ run_in_thread (GIOSchedulerJob *job,
 }
 
 /**
- * g_simple_async_result_run_in_thread:
+ * g_simple_async_result_run_in_thread: (skip)
  * @simple: a #GSimpleAsyncResult.
  * @func: a #GSimpleAsyncThreadFunc.
  * @io_priority: the io priority of the request.
- * @cancellable: optional #GCancellable object, %NULL to ignore.
+ * @cancellable: (allow-none): optional #GCancellable object, %NULL to ignore.
  *
  * Runs the asynchronous job in a separate thread and then calls
  * g_simple_async_result_complete_in_idle() on @simple to return
@@ -934,8 +937,8 @@ g_simple_async_result_is_valid (GAsyncResult *result,
 }
 
 /**
- * g_simple_async_report_error_in_idle:
- * @object: a #GObject.
+ * g_simple_async_report_error_in_idle: (skip)
+ * @object: (allow-none): a #GObject, or %NULL.
  * @callback: a #GAsyncReadyCallback.
  * @user_data: user data passed to @callback.
  * @domain: a #GQuark containing the error domain (usually #G_IO_ERROR).
@@ -959,7 +962,7 @@ g_simple_async_report_error_in_idle (GObject             *object,
   GSimpleAsyncResult *simple;
   va_list args;
  
-  g_return_if_fail (G_IS_OBJECT (object));
+  g_return_if_fail (!object || G_IS_OBJECT (object));
   g_return_if_fail (domain != 0);
   g_return_if_fail (format != NULL);
 
@@ -976,9 +979,9 @@ g_simple_async_report_error_in_idle (GObject             *object,
 
 /**
  * g_simple_async_report_gerror_in_idle:
- * @object: a #GObject.
- * @callback: a #GAsyncReadyCallback.
- * @user_data: user data passed to @callback.
+ * @object: (allow-none): a #GObject, or %NULL
+ * @callback: (scope async): a #GAsyncReadyCallback.
+ * @user_data: (closure): user data passed to @callback.
  * @error: the #GError to report
  *
  * Reports an error in an idle function. Similar to
@@ -993,7 +996,7 @@ g_simple_async_report_gerror_in_idle (GObject *object,
 {
   GSimpleAsyncResult *simple;
  
-  g_return_if_fail (G_IS_OBJECT (object));
+  g_return_if_fail (!object || G_IS_OBJECT (object));
   g_return_if_fail (error != NULL);
 
   simple = g_simple_async_result_new_from_error (object,
@@ -1005,8 +1008,8 @@ g_simple_async_report_gerror_in_idle (GObject *object,
 }
 
 /**
- * g_simple_async_report_take_gerror_in_idle:
- * @object: a #GObject.
+ * g_simple_async_report_take_gerror_in_idle: (skip)
+ * @object: (allow-none): a #GObject, or %NULL
  * @callback: a #GAsyncReadyCallback.
  * @user_data: user data passed to @callback.
  * @error: the #GError to report
@@ -1025,7 +1028,7 @@ g_simple_async_report_take_gerror_in_idle (GObject *object,
 {
   GSimpleAsyncResult *simple;
 
-  g_return_if_fail (G_IS_OBJECT (object));
+  g_return_if_fail (!object || G_IS_OBJECT (object));
   g_return_if_fail (error != NULL);
 
   simple = g_simple_async_result_new_take_error (object,