packages feed

avif 0.1.2.0 → 0.1.2.1

raw patch · 3 files changed

+7/−4 lines, 3 filesPVP: minor bump suggested

API additions: PVP suggests at least a minor version bump

API changes (from Hackage documentation)

+ Codec.Avif: AvifResultCannotChangeSetting :: AvifResult
+ Codec.Avif: AvifResultIncompatibleImage :: AvifResult
+ Codec.Avif: AvifResultOutOfMemory :: AvifResult
+ Codec.Avif.FFI: AvifPixelFormatCount :: AvifPixelFormat
+ Codec.Avif.FFI: AvifResultCannotChangeSetting :: AvifResult
+ Codec.Avif.FFI: AvifResultIncompatibleImage :: AvifResult
+ Codec.Avif.FFI: AvifResultOutOfMemory :: AvifResult

Files

CHANGELOG.md view
@@ -1,5 +1,9 @@ # avif +# 0.1.2.1++  * Remove deprecated function under the hood+ # 0.1.2.0    * Add `decodeE` and `AvifResult`
avif.cabal view
@@ -1,6 +1,6 @@ cabal-version:   1.18 name:            avif-version:         0.1.2.0+version:         0.1.2.1 license:         AGPL-3 license-file:    LICENSE copyright:       Copyright: (c) 2021 Vanessa McHale
src/Codec/Avif.chs view
@@ -8,11 +8,10 @@ import Codec.Picture (Image (Image), PixelRGBA8) import Control.Exception (throw, throwIO) import qualified Data.ByteString as BS-import Data.ByteString.Internal (memcpy) import qualified Data.ByteString.Unsafe as BS import Foreign.Ptr (castPtr) import Foreign.ForeignPtr (castForeignPtr, newForeignPtr, mallocForeignPtrBytes, withForeignPtr)-import Foreign.Marshal (allocaBytes)+import Foreign.Marshal (allocaBytes, copyBytes) import qualified Data.Vector.Storable as VS import System.IO.Unsafe (unsafePerformIO) @@ -90,5 +89,5 @@                 outBytes <- mallocForeignPtrBytes (fromIntegral sz')                  withForeignPtr outBytes $ \outPtr -> do-                    memcpy (castPtr outPtr) (castPtr pxPtr) (fromIntegral sz')+                    copyBytes outPtr (castPtr pxPtr) (fromIntegral sz')                     Right (Image (fromIntegral w) (fromIntegral h) (VS.unsafeFromForeignPtr0 outBytes (fromIntegral sz'))) <$ (avifRGBImageFreePixels rgbImagePtr)