HGamer3D-Data 0.3.1 → 0.3.2
raw patch · 2 files changed
+5/−4 lines, 2 files
Files
- HGamer3D-Data.cabal +1/−1
- HGamer3D/Data/HG3DClass.hs +4/−3
HGamer3D-Data.cabal view
@@ -1,5 +1,5 @@ Name: HGamer3D-Data -Version: 0.3.1 +Version: 0.3.2 Synopsis: Game Engine for the Haskell Programmer - Data Definitions and Utilities Description: HGamer3D is a game engine for developing 3D games in the programming
HGamer3D/Data/HG3DClass.hs view
@@ -29,6 +29,7 @@ import Foreign import Foreign.Ptr import Foreign.C +import Foreign.Storable import Data.Bits @@ -40,17 +41,17 @@ instance Storable HG3DClass where alignment _ = alignment (undefined :: CDouble) - sizeOf _ = 8 + sizeOf _ = 2 * (sizeOf nullPtr) peek p = do ptr <- (\ptr -> do {peekByteOff ptr 0 ::IO (Ptr ())}) p - fptr <- (\ptr -> do {peekByteOff ptr 4 ::IO (Ptr ())}) p + fptr <- (\ptr -> do {peekByteOff ptr (sizeOf nullPtr) ::IO (Ptr ())}) p let hc = HG3DClass (ptr) (fptr) return hc poke p (HG3DClass ptr fptr) = do (\ptr val -> do {pokeByteOff ptr 0 (val::(Ptr ()))}) p (ptr) - (\ptr val -> do {pokeByteOff ptr 4 (val::(Ptr ()))}) p (fptr) + (\ptr val -> do {pokeByteOff ptr (sizeOf nullPtr) (val::(Ptr ()))}) p (fptr)