X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fgraphics%2Fimage_png.cpp;h=28384480f488a6cb9534f598fbccb59f8f75c37b;hb=9bc0825e93b1385a4aaf9f90d666a1ac409ffb17;hp=f2247863dac57d8f2636af3eaadeb5dc4a8f6edd;hpb=1f842b63c6e1751b2017f5c4b67d50e2fc911e55;p=libs%2Fgui.git diff --git a/source/graphics/image_png.cpp b/source/graphics/image_png.cpp index f224786..2838448 100644 --- a/source/graphics/image_png.cpp +++ b/source/graphics/image_png.cpp @@ -31,12 +31,12 @@ void error(png_struct *png, const char *msg) namespace Msp { namespace Graphics { -bool is_png(const void *buf, unsigned len) +bool is_png(const char *buf, unsigned len) { - return !png_sig_cmp(reinterpret_cast(const_cast(buf)), 0, len); + return !png_sig_cmp(reinterpret_cast(const_cast(buf)), 0, len); } -void load_png(IO::Base &in, Image::Private &priv) +void load_png(IO::Base &in, Image::Private &priv, const char *, unsigned sig_len) { png_struct *png = 0; png_info *info = 0; @@ -52,6 +52,7 @@ void load_png(IO::Base &in, Image::Private &priv) throw bad_image_data(error_info.msg); png_set_read_fn(png, &in, read); + png_set_sig_bytes(png, sig_len); png_read_info(png, info); png_uint_32 width; png_uint_32 height;