summaryrefslogtreecommitdiff
path: root/iserv/proxy-src
diff options
context:
space:
mode:
Diffstat (limited to 'iserv/proxy-src')
-rw-r--r--iserv/proxy-src/Remote.hs8
1 files changed, 7 insertions, 1 deletions
diff --git a/iserv/proxy-src/Remote.hs b/iserv/proxy-src/Remote.hs
index 481d6acf7d..c91b2d08c6 100644
--- a/iserv/proxy-src/Remote.hs
+++ b/iserv/proxy-src/Remote.hs
@@ -59,6 +59,8 @@ import System.Environment
import System.Exit
import Text.Printf
import GHC.Fingerprint (getFileHash)
+import System.Directory
+import System.FilePath (isAbsolute)
import Data.Binary
import qualified Data.ByteString as BS
@@ -68,7 +70,7 @@ dieWithUsage = do
prog <- getProgName
die $ prog ++ ": " ++ msg
where
-#ifdef WINDOWS
+#if defined(WINDOWS)
msg = "usage: iserv <write-handle> <read-handle> <slave ip> [-v]"
#else
msg = "usage: iserv <write-fd> <read-fd> <slave ip> [-v]"
@@ -231,6 +233,10 @@ proxy verbose local remote = loop
resp <- fwdLoadCall verbose local remote msg'
reply resp
loop
+ LoadDLL path | isAbsolute path -> do
+ resp <- fwdLoadCall verbose local remote msg'
+ reply resp
+ loop
Shutdown{} -> fwdCall msg' >> return ()
_other -> fwdCall msg' >>= reply >> loop