Skip to content
This repository has been archived by the owner on Feb 11, 2021. It is now read-only.

Commit

Permalink
pixels don't need to be dynamically allocated
Browse files Browse the repository at this point in the history
Added a dump_screen() function to assist with test failure diagnosis
  • Loading branch information
slouken committed Nov 21, 2009
1 parent 0062f5c commit 3c0fd93
Showing 1 changed file with 32 additions and 7 deletions.
39 changes: 32 additions & 7 deletions test/automated/render/render.c
Expand Up @@ -58,14 +58,9 @@ static int render_compare( const char *msg, const SurfaceImage_t *s )
(void) msg;
(void) s;
int ret;
void *pix;
Uint8 pix[4*80*60];
SDL_Surface *testsur;

/* Allocate pixel space. */
pix = malloc( 4*80*60 );
if (SDL_ATassert( "malloc", pix!=NULL ))
return 1;

/* Read pixels. */
ret = SDL_RenderReadPixels( NULL, FORMAT, pix, 80*4 );
if (SDL_ATassert( "SDL_RenderReadPixels", ret==0) )
Expand All @@ -84,11 +79,41 @@ static int render_compare( const char *msg, const SurfaceImage_t *s )

/* Clean up. */
SDL_FreeSurface( testsur );
free(pix);

return 0;
}

#if 0
static int dump_screen( int index )
{
int ret;
char name[1024];
Uint8 pix[4*80*60];
SDL_Surface *testsur;
SDL_RendererInfo info;

/* Read pixels. */
ret = SDL_RenderReadPixels( NULL, FORMAT, pix, 80*4 );
if (SDL_ATassert( "SDL_RenderReadPixels", ret==0) )
return 1;

/* Create surface. */
testsur = SDL_CreateRGBSurfaceFrom( pix, 80, 60, 32, 80*4,
RMASK, GMASK, BMASK, AMASK);
if (SDL_ATassert( "SDL_CreateRGBSurfaceFrom", testsur!=NULL ))
return 1;

/* Dump surface. */
SDL_GetRendererInfo(&info);
sprintf(name, "%s-%s-%d.bmp", SDL_GetCurrentVideoDriver(), info.name, index);
SDL_SaveBMP(testsur, name);

/* Clean up. */
SDL_FreeSurface( testsur );

return 0;
}
#endif

/**
* @brief Checks to see if functionality is supported.
Expand Down

0 comments on commit 3c0fd93

Please sign in to comment.