summary refs log tree commit diff
path: root/pkgs/development/haskell-modules/patches
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/haskell-modules/patches')
-rw-r--r--pkgs/development/haskell-modules/patches/hdbus-semicolons.patch34
1 files changed, 34 insertions, 0 deletions
diff --git a/pkgs/development/haskell-modules/patches/hdbus-semicolons.patch b/pkgs/development/haskell-modules/patches/hdbus-semicolons.patch
new file mode 100644
index 000000000000..dc7ece8f3e8d
--- /dev/null
+++ b/pkgs/development/haskell-modules/patches/hdbus-semicolons.patch
@@ -0,0 +1,34 @@
+From 8fd84b4d6ba257ac93a61bce3378777840e8bf80 Mon Sep 17 00:00:00 2001
+From: Nikolay Amiantov <ab@fmap.me>
+Date: Sat, 5 Nov 2016 14:27:04 +0300
+Subject: [PATCH] getSessionAddress: take first bus address from
+ semicolon-separated variable
+
+---
+ lib/DBus/Address.hs | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/lib/DBus/Address.hs b/lib/DBus/Address.hs
+index 72ac99d..596b18c 100644
+--- a/lib/DBus/Address.hs
++++ b/lib/DBus/Address.hs
+@@ -18,6 +18,7 @@ module DBus.Address where
+ import qualified Control.Exception
+ import           Data.Char (digitToInt, ord, chr)
+ import           Data.List (intercalate)
++import           Data.Maybe (listToMaybe)
+ import qualified Data.Map
+ import           Data.Map (Map)
+ import qualified System.Environment
+@@ -152,7 +153,7 @@ getSystemAddress = do
+ getSessionAddress :: IO (Maybe Address)
+ getSessionAddress = do
+ 	env <- getenv "DBUS_SESSION_BUS_ADDRESS"
+-	return (env >>= parseAddress)
++	return $ maybe Nothing listToMaybe (env >>= parseAddresses)
+ 
+ -- | Returns the address in the environment variable
+ -- @DBUS_STARTER_ADDRESS@, which must be set.
+-- 
+2.10.1
+