From 49718ed60d6a4363117caa951da01a2b45d7858f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Konstantin=20Ka=CC=88fer?= Date: Wed, 16 Apr 2014 11:01:07 -0400 Subject: [PATCH] clean up use of C99 --- src/util/raster.cpp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/src/util/raster.cpp b/src/util/raster.cpp index 77199d606..30044f472 100644 --- a/src/util/raster.cpp +++ b/src/util/raster.cpp @@ -54,11 +54,11 @@ void readCallback(png_structp png, png_bytep data, png_size_t length) { } } -void errorHandler(png_structp png, png_const_charp error_msg) { +void errorHandler(png_structp, png_const_charp error_msg) { throw std::runtime_error(error_msg); } -void warningHandler(png_structp png, png_const_charp error_msg) { +void warningHandler(png_structp, png_const_charp error_msg) { fprintf(stderr, "PNG: %s\n", error_msg); } @@ -122,13 +122,17 @@ void Raster::loadImage(const std::string& data) { char *surface = img; assert(surface); - png_bytep row_pointers[height]; + struct ptrs { + ptrs(size_t count) : rows(new png_bytep[count]) {} + ~ptrs() { delete[] rows; } + png_bytep *rows = nullptr; + } pointers(height); for (unsigned i = 0; i < height; ++i) { - row_pointers[i] = (png_bytep)(surface + (i * rowbytes)); + pointers.rows[i] = (png_bytep)(surface + (i * rowbytes)); } // Read image data - png_read_image(png, row_pointers); + png_read_image(png, pointers.rows); png_read_end(png, nullptr);