Avoid non-exhaustive pattern match.
This commit is contained in:
parent
7bc879268c
commit
0ae79275a9
1 changed files with 12 additions and 11 deletions
|
@ -410,9 +410,9 @@ jpegSize img =
|
||||||
|
|
||||||
jfifSize :: ByteString -> Either String ImageSize
|
jfifSize :: ByteString -> Either String ImageSize
|
||||||
jfifSize rest =
|
jfifSize rest =
|
||||||
let [dpiDensity,dpix1,dpix2,dpiy1,dpiy2] = map fromIntegral
|
case map fromIntegral $ unpack $ B.take 5 $ B.drop 9 rest of
|
||||||
$ unpack $ B.take 5 $B.drop 9 rest
|
[dpiDensity,dpix1,dpix2,dpiy1,dpiy2] ->
|
||||||
factor = case dpiDensity of
|
let factor = case dpiDensity of
|
||||||
1 -> id
|
1 -> id
|
||||||
2 -> \x -> x * 254 `div` 10
|
2 -> \x -> x * 254 `div` 10
|
||||||
_ -> const 72
|
_ -> const 72
|
||||||
|
@ -420,10 +420,11 @@ jfifSize rest =
|
||||||
dpiy = factor (shift dpiy1 8 + dpiy2)
|
dpiy = factor (shift dpiy1 8 + dpiy2)
|
||||||
in case findJfifSize rest of
|
in case findJfifSize rest of
|
||||||
Left msg -> Left msg
|
Left msg -> Left msg
|
||||||
Right (w,h) ->Right ImageSize { pxX = w
|
Right (w,h) -> Right ImageSize { pxX = w
|
||||||
, pxY = h
|
, pxY = h
|
||||||
, dpiX = dpix
|
, dpiX = dpix
|
||||||
, dpiY = dpiy }
|
, dpiY = dpiy }
|
||||||
|
_ -> Left "unable to determine JFIF size"
|
||||||
|
|
||||||
findJfifSize :: ByteString -> Either String (Integer,Integer)
|
findJfifSize :: ByteString -> Either String (Integer,Integer)
|
||||||
findJfifSize bs =
|
findJfifSize bs =
|
||||||
|
|
Loading…
Add table
Reference in a new issue