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


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


result GAsyncResult

The GAsyncResult that was provided to the callback.

 The data is owned by the caller of the function.
length 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 GError **
  The return location for a GError*, or NULL.

Return value

Returns: 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 data, and is responsible for freeing it.
 The value is a NUL terminated UTF-8 string.