### Function

# Camel util_decode_user_header_setting

since: 3.42

#### Declaration [src]

    void
    camel_util_decode_user_header_setting (
      const gchar* setting_value,
      gchar** out_display_name,
      const gchar** out_header_name
    )

#### Description [src]

Decode the values previously encoded by camel_util_encode_user_header_setting(). The `out_header_name` points to the `setting_value`, thus it’s valid as long as the `setting_value` is valid and unchanged.

The `out_header_name` can result in `NULL` when the `setting_value` contains invalid data.

The `out_display_name` can result in `NULL` when the `setting_value` does not contain the display name. In such case the header name can be used as the display name.

Available since: 3.42

#### Parameters

`setting_value`

  Type: `const gchar*`

  The value to decode.

  The data is owned by the caller of the function.
  The value is a NUL terminated UTF-8 string.

`out_display_name`

  Type: `gchar**`

  Location for the decoded display name, or `NULL` when not needed.

  The argument will be set by the function.
  The argument can be set to `NULL` by the function.
  The caller of the function takes ownership of the returned data, and is responsible for freeing it.
  The value is a NUL terminated UTF-8 string.

`out_header_name`

  Type: `const gchar**`

  The location for the decoded header name.

  The argument will be set by the function.
  The caller of the function takes ownership of the returned data, and is responsible for freeing it.
  The value is a NUL terminated UTF-8 string.