diff --git a/project/src/graphics/ImageBuffer.cpp b/project/src/graphics/ImageBuffer.cpp index 39b337bbf..af1edda8f 100644 --- a/project/src/graphics/ImageBuffer.cpp +++ b/project/src/graphics/ImageBuffer.cpp @@ -40,7 +40,12 @@ namespace lime { width = val_int (val_field (imageBuffer, id_width)); height = val_int (val_field (imageBuffer, id_height)); bpp = val_int (val_field (imageBuffer, id_bitsPerPixel)); - data = new ByteArray (val_field (val_field (imageBuffer, id_data), id_buffer)); + value data_value = val_field (imageBuffer, id_data); + value buffer_value = val_field (data_value, id_buffer); + if (val_is_buffer (buffer_value)) + data = new ByteArray (buffer_value); + else + data = new ByteArray (data_value); }