summaryrefslogtreecommitdiff
path: root/gnu/packages/patches/cabal-install-base16-bytestring1.0.patch
blob: 998bf08718a2b95b659c277eb7883877e7d2e3b0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Restore compatibility with newer version of base16-bytestring.

Taken from https://raw.githubusercontent.com/archlinux/svntogit-community/packages/trunk/cabal-install-base16-bytestring1.0.patch

diff --git a/Distribution/Client/HashValue.hs b/Distribution/Client/HashValue.hs
index 54b8aee9e..11e647c1c 100644
--- a/Distribution/Client/HashValue.hs
+++ b/Distribution/Client/HashValue.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE CPP          #-}
 {-# LANGUAGE DeriveDataTypeable #-}
 {-# LANGUAGE DeriveGeneric      #-}
 module Distribution.Client.HashValue (
@@ -72,10 +73,14 @@ hashFromTUF (Sec.Hash hashstr) =
     --TODO: [code cleanup] either we should get TUF to use raw bytestrings or
     -- perhaps we should also just use a base16 string as the internal rep.
     case Base16.decode (BS.pack hashstr) of
+#if MIN_VERSION_base16_bytestring(1,0,0)
+      Right hash -> HashValue hash
+      Left _ -> error "hashFromTUF: cannot decode base16"
+#else
       (hash, trailing) | not (BS.null hash) && BS.null trailing
         -> HashValue hash
       _ -> error "hashFromTUF: cannot decode base16 hash"
-
+#endif
 
 -- | Truncate a 32 byte SHA256 hash to
 --