diff --git a/src/video/quartz/SDL_QuartzVideo.m b/src/video/quartz/SDL_QuartzVideo.m index c094dc730..caf33e923 100644 --- a/src/video/quartz/SDL_QuartzVideo.m +++ b/src/video/quartz/SDL_QuartzVideo.m @@ -1252,7 +1252,7 @@ static int QZ_LockHWSurface(_THIS, SDL_Surface *surface) * Always get latest bitmap address and rowbytes for the screen surface; * they can change dynamically (user has multiple monitors, etc). */ - if (surface == SDL_VideoSurface) { + if ((surface == SDL_VideoSurface) && (surface->flags & SDL_HWSURFACE)) { surface->pixels = (void*) CGDisplayBaseAddress (kCGDirectMainDisplay); surface->pitch = CGDisplayBytesPerRow (kCGDirectMainDisplay); return (surface->pixels != NULL);