A failure to open a pipe should return INVALID_HANDLE_VALUE.

diff --git a/files/file.c b/files/file.c
index a9cedb3..9c8d115 100644
--- a/files/file.c
+++ b/files/file.c
@@ -434,7 +434,8 @@
         if(!strncasecmp(&filename[4],"pipe\\",5))
         {
             TRACE("Opening a pipe: %s\n",filename);
-            return FILE_OpenPipe(filename,access);
+            ret = FILE_OpenPipe(filename,access);
+            goto done;
         }
         else if (!DOSFS_GetDevice( filename ))
         {