diff --git a/src/add-ons/translators/raw/RAWTranslator.cpp b/src/add-ons/translators/raw/RAWTranslator.cpp index 978623caff..a41d74e02c 100644 --- a/src/add-ons/translators/raw/RAWTranslator.cpp +++ b/src/add-ons/translators/raw/RAWTranslator.cpp @@ -8,6 +8,8 @@ #include "ConfigView.h" #include "RAW.h" +#include + #include #include #include @@ -180,8 +182,12 @@ RAWTranslator::DerivedTranslate(BPositionIO* source, image_data_info data; raw.ImageAt(imageIndex, data); - if (!data.is_raw) - return B_NO_TRANSLATOR; + if (!data.is_raw) { + // let others handle embedded JPEG data + BMemoryIO io(buffer, bufferSize); + BTranslatorRoster* roster = BTranslatorRoster::Default(); + return roster->Translate(&io, NULL, settings, target, outType); + } uint32 dataSize = data.output_width * 4 * data.output_height;