Function
GLibUriunescape_segment
since: 2.16
Declaration
char*
g_uri_unescape_segment (
const char* escaped_string,
const char* escaped_string_end,
const char* illegal_characters
)
Description
Unescapes a segment of an escaped string.
If any of the characters in illegal_characters or the NUL
character appears as an escaped character in escaped_string, then
that is an error and NULL will be returned. This is useful if you
want to avoid for instance having a slash being expanded in an
escaped path element, which might confuse pathname handling.
Note: NUL byte is not accepted in the output, in contrast to g_uri_unescape_bytes().
Available since: 2.16
Parameters
escaped_string-
Type:
const char*A string, may be
NULL.The argument can be NULL.The data is owned by the caller of the function. The value is a NUL terminated UTF-8 string. escaped_string_end-
Type:
const char*Pointer to end of
escaped_string, may beNULL.The argument can be NULL.The data is owned by the caller of the function. The value is a NUL terminated UTF-8 string. illegal_characters-
Type:
const char*An optional string of illegal characters not to be allowed, may be
NULL.The argument can be NULL.The data is owned by the caller of the function. The value is a NUL terminated UTF-8 string.
Return value
Type: char*
An unescaped version of escaped_string,
or NULL on error. The returned string should be freed when no longer
needed. As a special case if NULL is given for escaped_string, this
function will return NULL.
| The caller of the function takes ownership of the data, and is responsible for freeing it. |
The return value can be NULL. |
| The value is a NUL terminated UTF-8 string. |