GLib.Hook.next_valid
Description: Reference for GLib.Hook.next_valid

### Function

# GLib Hooknext_valid

#### Declaration [src]

    GHook*
    g_hook_next_valid (
      GHookList* hook_list,
      GHook* hook,
      gboolean may_be_in_call
    )

#### Description [src]

Returns the next `GHook` in a `GHookList` which has not been destroyed. The reference count for the `GHook` is incremented, so you must call `g_hook_unref()` to restore it when no longer needed. (Or continue to call `g_hook_next_valid()` until `NULL` is returned.).

This function is not directly available to language bindings.

#### Parameters

`hook_list`

  Type: `GHookList`

  A `GHookList`.

  The data is owned by the caller of the function.

`hook`

  Type: `GHook`

  The current `GHook`.

  The data is owned by the caller of the function.

`may_be_in_call`

  Type: `gboolean`

  `TRUE` if hooks which are currently running (e.g. in another thread) are considered valid. If set to `FALSE`, these are skipped.

#### Return value

Type: `GHook`

The next valid `GHook`, or `NULL` if none are valid.

The data is owned by the called function.