+/**
+ * g_filter_output_stream_get_close_base_stream:
+ * @stream: a #GFilterOutputStream.
+ *
+ * Returns whether the base stream will be closed when @stream is
+ * closed.
+ *
+ * Return value: %TRUE if the base stream will be closed.
+ **/
+gboolean
+g_filter_output_stream_get_close_base_stream (GFilterOutputStream *stream)
+{
+ g_return_val_if_fail (G_IS_FILTER_OUTPUT_STREAM (stream), FALSE);
+
+ return GET_PRIVATE (stream)->close_base;
+}
+
+/**
+ * g_filter_output_stream_set_close_base_stream:
+ * @stream: a #GFilterOutputStream.
+ * @close_base: %TRUE to close the base stream.
+ *
+ * Sets whether the base stream will be closed when @stream is closed.
+ **/
+void
+g_filter_output_stream_set_close_base_stream (GFilterOutputStream *stream,
+ gboolean close_base)
+{
+ GFilterOutputStreamPrivate *priv;
+
+ g_return_if_fail (G_IS_FILTER_OUTPUT_STREAM (stream));
+
+ close_base = !!close_base;
+
+ priv = GET_PRIVATE (stream);
+
+ if (priv->close_base != close_base)
+ {
+ priv->close_base = close_base;
+ g_object_notify (G_OBJECT (stream), "close-base-stream");
+ }
+}
+