diff options
Diffstat (limited to 'gir/gobject-2.0.c')
-rw-r--r-- | gir/gobject-2.0.c | 29 |
1 files changed, 21 insertions, 8 deletions
diff --git a/gir/gobject-2.0.c b/gir/gobject-2.0.c index 8bfce427..4a9d1727 100644 --- a/gir/gobject-2.0.c +++ b/gir/gobject-2.0.c @@ -118,11 +118,14 @@ * objects. * * If the object's #GObjectClass.dispose method results in additional - * references to the object being held, any #GWeakRefs taken - * before it was disposed will continue to point to %NULL. If - * #GWeakRefs are taken after the object is disposed and - * re-referenced, they will continue to point to it until its refcount + * references to the object being held (‘re-referencing’), any #GWeakRefs taken + * before it was disposed will continue to point to %NULL. Any #GWeakRefs taken + * during disposal and after re-referencing, or after disposal has returned due + * to the re-referencing, will continue to point to the object until its refcount * goes back to zero, at which point they too will be invalidated. + * + * It is invalid to take a #GWeakRef on an object during #GObjectClass.dispose + * without first having or creating a strong reference to the object. */ @@ -3136,6 +3139,12 @@ * Similarly, #gfloat is promoted to #gdouble, so you must ensure that the value * you provide is a #gdouble, even for a property of type #gfloat. * + * Since GLib 2.72, all #GObjects are guaranteed to be aligned to at least the + * alignment of the largest basic GLib type (typically this is #guint64 or + * #gdouble). If you need larger alignment for an element in a #GObject, you + * should allocate it on the heap (aligned), or arrange for your #GObject to be + * appropriately padded. + * * Returns: (transfer full) (type GObject.Object): a new instance of * @object_type */ @@ -4673,7 +4682,8 @@ * location for the return value. If the return type of the signal * is #G_TYPE_NONE, the return value location can be omitted. * - * Emits a signal. + * Emits a signal. Signal emission is done synchronously. + * The method will only return control after all handlers are called or signal emission was stopped. * * Note that g_signal_emit() resets the return value to the default * if no handlers are connected, in contrast to g_signal_emitv(). @@ -4689,7 +4699,8 @@ * is %G_TYPE_NONE, the return value location can be omitted. The * number of parameters to pass to this function is defined when creating the signal. * - * Emits a signal. + * Emits a signal. Signal emission is done synchronously. + * The method will only return control after all handlers are called or signal emission was stopped. * * Note that g_signal_emit_by_name() resets the return value to the default * if no handlers are connected, in contrast to g_signal_emitv(). @@ -4706,7 +4717,8 @@ * location for the return value. If the return type of the signal * is #G_TYPE_NONE, the return value location can be omitted. * - * Emits a signal. + * Emits a signal. Signal emission is done synchronously. + * The method will only return control after all handlers are called or signal emission was stopped. * * Note that g_signal_emit_valist() resets the return value to the default * if no handlers are connected, in contrast to g_signal_emitv(). @@ -4724,7 +4736,8 @@ * store the return value of the signal emission. This must be provided if the * specified signal returns a value, but may be ignored otherwise. * - * Emits a signal. + * Emits a signal. Signal emission is done synchronously. + * The method will only return control after all handlers are called or signal emission was stopped. * * Note that g_signal_emitv() doesn't change @return_value if no handlers are * connected, in contrast to g_signal_emit() and g_signal_emit_valist(). |