A wrapper function for OutputStream.write which takes a glib.Bytes as input. This can be more convenient for use by language bindings or in other cases where the refcounted nature of glib.Bytes is helpful over a bare pointer interface.

However, note that this function may still perform partial writes, just like OutputStream.write. If that occurs, to continue writing, you will need to create a new glib.Bytes containing just the remaining bytes, using Bytes.newFromBytes. Passing the same glib.Bytes instance multiple times potentially can result in duplicated data in the output stream.

class OutputStream


bytes Bytes

the glib.Bytes to write

cancellable Cancellable

optional cancellable object

Return Value

Type: ptrdiff_t

Number of bytes written, or -1 on error


GException on failure.