]> git.tdb.fi Git - libs/gui.git/blobdiff - source/graphics/jpeg/jpegloader.cpp
Make it possible to load an image into an externally allocated buffer
[libs/gui.git] / source / graphics / jpeg / jpegloader.cpp
index f61f651d5db13104c6ec6e54c397d5d10929d3fc..45689cf65725a032b3020ed62d546be46db4b345 100644 (file)
@@ -119,7 +119,7 @@ bool JpegLoader::detect(const string &sig)
        return !sig.compare(0, sizeof(jpeg_sig), jpeg_sig, sizeof(jpeg_sig));
 }
 
-void JpegLoader::load_(Image::Data &data)
+void JpegLoader::load_headers_(Image::Data &data)
 {
        if(setjmp(priv->err_mgr.jmp))
                throw bad_image_data(priv->err_mgr.message);
@@ -132,8 +132,10 @@ void JpegLoader::load_(Image::Data &data)
        data.height = priv->jpeg.output_height;
        data.stride = priv->jpeg.output_width*priv->jpeg.output_components;
        data.fmt = RGB;
+}
 
-       data.pixels = new char[data.stride*data.height];
+void JpegLoader::load_pixels_(Image::Data &data)
+{
        JSAMPROW rows[8];
        while(priv->jpeg.output_scanline<data.height)
        {