diff --git a/sys/bluez/gstavdtpsink.c b/sys/bluez/gstavdtpsink.c
index 1d61ea2d702..2e87e0eef58 100644
--- a/sys/bluez/gstavdtpsink.c
+++ b/sys/bluez/gstavdtpsink.c
@@ -143,8 +143,7 @@ gst_avdtp_sink_stop (GstBaseSink * basesink)
   }
 
   if (self->stream) {
-    g_io_channel_flush (self->stream, NULL);
-    g_io_channel_close (self->stream);
+    g_io_channel_shutdown (self->stream, TRUE, NULL);
     g_io_channel_unref (self->stream);
     self->stream = NULL;
   }