Method

GioDataInputStreamread_upto_finish

since: 2.24

Declaration [src]

char*
g_data_input_stream_read_upto_finish (
  GDataInputStream* stream,
  GAsyncResult* result,
  gsize* length,
  GError** error
)

Description [src]

Finish an asynchronous call started by g_data_input_stream_read_upto_async().

Note that this function does not consume the stop character. You have to use g_data_input_stream_read_byte() to get it before calling g_data_input_stream_read_upto_async() again.

The returned string will always be nul-terminated on success.

Available since: 2.24

Parameters

result

Type: GAsyncResult

The GAsyncResult that was provided to the callback.

The data is owned by the caller of the method.
length

Type: gsize*

A #gsize to get the length of the data read in.

The argument will be set by the function.
The argument can be NULL.
error

Type: GError **

The return location for a recoverable error.

The argument can be NULL.
If the return location is not NULL, then you must initialize it to a NULL GError*.
The argument will be left initialized to NULL by the method if there are no errors.
In case of error, the argument will be set to a newly allocated GError; the caller will take ownership of the data, and be responsible for freeing it.

Return value

Type: char*

A string with the data that was read before encountering any of the stop characters. Set length to a #gsize to get the length of the string. This function will return NULL on an error.

The caller of the method takes ownership of the returned data, and is responsible for freeing it.
The value is a NUL terminated UTF-8 string.