+ GError *temp_error = NULL;
+ gboolean has_key;
+
+ if (g_key_file_has_key_full (key_file, group_name, key, &has_key, &temp_error))
+ {
+ return has_key;
+ }
+ else
+ {
+ g_propagate_error (error, temp_error);
+ return FALSE;
+ }
+}
+
+/**
+ * g_key_file_has_key_full:
+ * @key_file: a #GKeyFile
+ * @group_name: a group name
+ * @key: a key name
+ * @has_key: (out) (allow-none): Return location for whether or not key exists
+ * @error: return location for a #GError
+ *
+ * Looks whether the key file has the key @key in the group
+ * @group_name.
+ *
+ * Return value: %TRUE if a group with the name @group_name
+ * exists. Otherwise, @error is set and %FALSE is returned.
+ *
+ * Since: 2.30
+ * Rename to: g_key_file_has_key
+ **/
+gboolean
+g_key_file_has_key_full (GKeyFile *key_file,
+ const gchar *group_name,
+ const gchar *key,
+ gboolean *has_key,
+ GError **error)
+{