diff --git a/src/stream/pipe.js b/src/stream/pipe.js
index <HASH>..<HASH> 100644
--- a/src/stream/pipe.js
+++ b/src/stream/pipe.js
@@ -20,13 +20,17 @@
 function _gpfStreamPipe (source, destination) {
     var iReadableStream = _gpfStreamQueryReadable(source),
         iWritableStream = _gpfStreamQueryWritable(destination);
-    return iReadableStream.read(iWritableStream)
-        .then(function () {
-            var iFlushableStream = _gpfInterfaceQuery(_gpfIFlushableStream, iWritableStream);
-            if (iFlushableStream) {
-                return iFlushableStream.flush();
-            }
-        });
+    try {
+        return iReadableStream.read(iWritableStream)
+            .then(function () {
+                var iFlushableStream = _gpfInterfaceQuery(_gpfIFlushableStream, iWritableStream);
+                if (iFlushableStream) {
+                    return iFlushableStream.flush();
+                }
+            });
+    } catch (e) {
+        return Promise.reject(e);
+    }
 }
 
 /** @gpf:sameas _gpfStreamPipe */
Securing on exceptions (#<I>)