From f313669cc99a25b0f2ba4f57d98ba9a3a395b3dd Mon Sep 17 00:00:00 2001 From: Neil Date: Tue, 24 Jan 2017 08:29:17 +1100 Subject: Use correct signatures for pattern draw and release functions and avoid reinterpret_cast --- cocoa/PlatCocoa.mm | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/cocoa/PlatCocoa.mm b/cocoa/PlatCocoa.mm index bef571809..0f9e07604 100644 --- a/cocoa/PlatCocoa.mm +++ b/cocoa/PlatCocoa.mm @@ -481,16 +481,17 @@ void SurfaceImpl::FillRectangle(PRectangle rc, ColourDesired back) //-------------------------------------------------------------------------------------------------- -static void drawImageRefCallback(CGImageRef pattern, CGContextRef gc) +static void drawImageRefCallback(void *info, CGContextRef gc) { + CGImageRef pattern = static_cast(info); CGContextDrawImage(gc, CGRectMake(0, 0, CGImageGetWidth(pattern), CGImageGetHeight(pattern)), pattern); } //-------------------------------------------------------------------------------------------------- -static void releaseImageRefCallback(CGImageRef pattern) +static void releaseImageRefCallback(void *info) { - CGImageRelease(pattern); + CGImageRelease(static_cast(info)); } //-------------------------------------------------------------------------------------------------- @@ -507,9 +508,7 @@ void SurfaceImpl::FillRectangle(PRectangle rc, Surface &surfacePattern) return; } - const CGPatternCallbacks drawImageCallbacks = { 0, - reinterpret_cast(drawImageRefCallback), - reinterpret_cast(releaseImageRefCallback) }; + const CGPatternCallbacks drawImageCallbacks = { 0, drawImageRefCallback, releaseImageRefCallback }; CGPatternRef pattern = CGPatternCreate(image, CGRectMake(0, 0, patternSurface.bitmapWidth, patternSurface.bitmapHeight), -- cgit v1.2.3