# HG changeset patch # User Tero Marttila # Date 1264386818 -7200 # Node ID d4a62899587f872f52feef30b3f330b419a82a09 # Parent bbc12563752abd0c05bb93745e491394f24accd2 PT_ERR_TILE_DIM and PT_ERR_TILE_ZOOM diff -r bbc12563752a -r d4a62899587f include/pngtile.h --- a/include/pngtile.h Mon Jan 25 04:29:32 2010 +0200 +++ b/include/pngtile.h Mon Jan 25 04:33:38 2010 +0200 @@ -236,13 +236,14 @@ PT_ERR_CACHE_VERSION, PT_ERR_CACHE_MUNMAP, PT_ERR_CACHE_CLOSE, - + + PT_ERR_TILE_DIM, PT_ERR_TILE_CLIP, + PT_ERR_TILE_ZOOM, PT_ERR_PTHREAD_CREATE, PT_ERR_CTX_SHUTDOWN, - PT_ERR_ZOOM, PT_ERR_MAX, }; diff -r bbc12563752a -r d4a62899587f src/lib/error.c --- a/src/lib/error.c Mon Jan 25 04:29:32 2010 +0200 +++ b/src/lib/error.c Mon Jan 25 04:33:38 2010 +0200 @@ -34,8 +34,9 @@ [PT_ERR_PTHREAD_CREATE] = "pthread_create", [PT_ERR_CTX_SHUTDOWN] = "pt_ctx is shutting down", + [PT_ERR_TILE_DIM] = "Invalid tile dimensions", [PT_ERR_TILE_CLIP] = "Tile outside of image", - [PT_ERR_ZOOM] = "Invalid zoom level", + [PT_ERR_TILE_ZOOM] = "Invalid zoom level", }; const char *pt_strerror (int err) diff -r bbc12563752a -r d4a62899587f src/lib/png.c --- a/src/lib/png.c Mon Jan 25 04:29:32 2010 +0200 +++ b/src/lib/png.c Mon Jan 25 04:33:38 2010 +0200 @@ -444,7 +444,7 @@ // only supports zooming out... if (ti->zoom >= 0) - RETURN_ERROR(PT_ERR_ZOOM); + RETURN_ERROR(PT_ERR_TILE_ZOOM); if ((row_buf = malloc(row_bytes)) == NULL) RETURN_ERROR(PT_ERR_MEM); diff -r bbc12563752a -r d4a62899587f src/lib/tile.c --- a/src/lib/tile.c Mon Jan 25 04:29:32 2010 +0200 +++ b/src/lib/tile.c Mon Jan 25 04:33:38 2010 +0200 @@ -78,6 +78,10 @@ int pt_tile_render (struct pt_tile *tile) { + // validate dimensions + if (!tile->info.width || !tile->info.height) + RETURN_ERROR(PT_ERR_TILE_DIM); + return pt_cache_tile(tile->cache, tile); }