if(dib_length<40)
throw bad_image_data("DIB header too short (very old bmp file?)");
read_full(io, dib_header+12, dib_length-12);
if(dib_length<40)
throw bad_image_data("DIB header too short (very old bmp file?)");
read_full(io, dib_header+12, dib_length-12);