Method

GioOutputStreamsplice

Declaration

gssize
g_output_stream_splice (
  GOutputStream* stream,
  GInputStream* source,
  GOutputStreamSpliceFlags flags,
  GCancellable* cancellable,
  GError** error
)

Description

Splices an input stream into an output stream.

Parameters

source

Type: GInputStream

A GInputStream.

The data is owned by the caller of the function.
flags

Type: GOutputStreamSpliceFlags

A set of GOutputStreamSpliceFlags.

cancellable

Type: GCancellable

Optional GCancellable object, NULL to ignore.

The argument can be NULL.
The data is owned by the caller of the function.
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 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: gssize

A #gssize containing the size of the data spliced, or -1 if an error occurred. Note that if the number of bytes spliced is greater than G_MAXSSIZE, then that will be returned, and there is no way to determine the actual number of bytes spliced.