]> git.tdb.fi Git - libs/gui.git/blobdiff - source/graphics/bmploader.cpp
Add some state checking to ImageLoader
[libs/gui.git] / source / graphics / bmploader.cpp
index 086648bfe7b3eb26bb4f079ad95281a1b151fc9d..39629f714e776e3a8d1bfa954fe60007c1a3be3f 100644 (file)
@@ -38,13 +38,13 @@ BmpLoader::BmpLoader(IO::Base &i, unsigned sb):
 
 bool BmpLoader::detect(const std::string &sig)
 {
-       static const char bmp_sig[] = "BM";
+       static const char bmp_sig[] = { 'B', 'M' };
        if(sig.size()<sizeof(bmp_sig))
                return false;
        return !sig.compare(0, sizeof(bmp_sig), bmp_sig, sizeof(bmp_sig));
 }
 
-void BmpLoader::load(Image::Data &data)
+void BmpLoader::load_(Image::Data &data)
 {
        char bm_header[14];
        read_full(io, bm_header+sig_bytes, sizeof(bm_header)-sig_bytes);
@@ -92,16 +92,16 @@ void BmpLoader::load(Image::Data &data)
                skip -= size;
        }
 
-       data.data = new char[data.stride*data.height];
+       data.pixels = new char[data.stride*data.height];
        if(height<0)
        {
                for(unsigned y=0; y<data.height; ++y)
-                       read_full(io, data.data+(data.height-1-y)*data.stride, data.stride);
+                       read_full(io, data.pixels+(data.height-1-y)*data.stride, data.stride);
        }
        else
        {
                for(unsigned y=0; y<data.height; ++y)
-                       read_full(io, data.data+y*data.stride, data.stride);
+                       read_full(io, data.pixels+y*data.stride, data.stride);
        }
 }