since: 2.0.0

Declaration [src]

fu_strsplit_stream (
  GInputStream* stream,
  gsize offset,
  const gchar* delimiter,
  FuStrsplitFunc callback,
  gpointer user_data,
  GError** error

Description [src]

Splits the string, calling the given function for each of the tokens found. If any callback returns FALSE scanning is aborted.

Use this function in preference to fu_strsplit() when the input file is untrusted, and you don’t want to allocate a GStrv with billions of one byte items.

Available since: 2.0.0



Type: GInputStream

A GInputStream to split.

The data is owned by the caller of the function.

Type: gsize

Offset into stream.


Type: const gchar*

A string which specifies the places at which to split the string.

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

Type: FuStrsplitFunc

A FuStrsplitFunc.


Type: gpointer

User data.

The argument can be NULL.
The data is owned by the caller of the function.

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 function 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: gboolean

TRUE if no callback returned FALSE.