summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gui/image/qvolatileimagedata_symbian.cpp3
-rw-r--r--src/openvg/qvg_symbian.cpp1
2 files changed, 3 insertions, 1 deletions
diff --git a/src/gui/image/qvolatileimagedata_symbian.cpp b/src/gui/image/qvolatileimagedata_symbian.cpp
index 474d0ef..6e2909b 100644
--- a/src/gui/image/qvolatileimagedata_symbian.cpp
+++ b/src/gui/image/qvolatileimagedata_symbian.cpp
@@ -392,6 +392,9 @@ void QVolatileImageData::initWithBitmap(CFbsBitmap *source)
} else if (needsCopy) {
// Rasterize extended and compressed bitmaps.
bitmap = rasterizeBitmap(source, EColor16MAP);
+ } else if (source->DisplayMode() == EGray2) {
+ // The pixels will be inverted, must make a copy.
+ bitmap = rasterizeBitmap(source, source->DisplayMode());
} else {
// Efficient path: no pixel data copying. Just duplicate. This of course
// means the original bitmap's data may get modified, but that's fine
diff --git a/src/openvg/qvg_symbian.cpp b/src/openvg/qvg_symbian.cpp
index 405151d..2924d41 100644
--- a/src/openvg/qvg_symbian.cpp
+++ b/src/openvg/qvg_symbian.cpp
@@ -157,7 +157,6 @@ static inline bool conversionLessFormat(QImage::Format format)
case QImage::Format_RGB32: // EColor16MU
case QImage::Format_ARGB32: // EColor16MA
case QImage::Format_ARGB32_Premultiplied: // EColor16MAP
- case QImage::Format_MonoLSB: // EGray2
case QImage::Format_Indexed8: // EGray256, EColor256
return true;
default: