### Function

# GObject clear_signal_handler

since: 2.62

#### Declaration

    void
    g_clear_signal_handler (
      gulong* handler_id_ptr,
      GObject* instance
    )

#### Description

Disconnects a handler from `instance` so it will not be called during any future or currently ongoing emissions of the signal it has been connected to. The `handler_id_ptr` is then set to zero, which is never a valid handler ID value (see g_signal_connect()).

If the handler ID is 0 then this function does nothing.

There is also a macro version of this function so that the code will be inlined.

Available since: 2.62

#### Parameters

`handler_id_ptr`

  Type: `gulong*`

  A pointer to a handler ID (of type #gulong) of the handler to be disconnected.

  The data is owned by the caller of the function.

`instance`

  Type: `GObject`

  The instance to remove the signal handler from. This pointer may be `NULL` or invalid, if the handler ID is zero.

  The data is owned by the caller of the function.