mirror of
https://gitlab.freedesktop.org/cairo/cairo.git
synced 2026-05-05 20:28:02 +02:00
Add null output stream
This commit is contained in:
parent
6772efcdf6
commit
b74533b5a5
2 changed files with 27 additions and 0 deletions
|
|
@ -161,6 +161,9 @@ _cairo_memory_stream_copy (cairo_output_stream_t *base,
|
|||
cairo_private int
|
||||
_cairo_memory_stream_length (cairo_output_stream_t *stream);
|
||||
|
||||
cairo_output_stream_t *
|
||||
_cairo_null_stream_create (void);
|
||||
|
||||
/* cairo-base85-stream.c */
|
||||
cairo_private cairo_output_stream_t *
|
||||
_cairo_base85_stream_create (cairo_output_stream_t *output);
|
||||
|
|
@ -169,4 +172,5 @@ _cairo_base85_stream_create (cairo_output_stream_t *output);
|
|||
cairo_private cairo_output_stream_t *
|
||||
_cairo_deflate_stream_create (cairo_output_stream_t *output);
|
||||
|
||||
|
||||
#endif /* CAIRO_OUTPUT_STREAM_PRIVATE_H */
|
||||
|
|
|
|||
|
|
@ -676,3 +676,26 @@ _cairo_memory_stream_length (cairo_output_stream_t *base)
|
|||
|
||||
return _cairo_array_num_elements (&stream->array);
|
||||
}
|
||||
|
||||
static cairo_status_t
|
||||
null_write (cairo_output_stream_t *base,
|
||||
const unsigned char *data, unsigned int length)
|
||||
{
|
||||
return CAIRO_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
cairo_output_stream_t *
|
||||
_cairo_null_stream_create (void)
|
||||
{
|
||||
cairo_output_stream_t *stream;
|
||||
|
||||
stream = malloc (sizeof *stream);
|
||||
if (stream == NULL) {
|
||||
_cairo_error_throw (CAIRO_STATUS_NO_MEMORY);
|
||||
return (cairo_output_stream_t *) &_cairo_output_stream_nil;
|
||||
}
|
||||
|
||||
_cairo_output_stream_init (stream, null_write, NULL);
|
||||
|
||||
return stream;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue