summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/directfb
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <holger@moiji-mobile.com>2012-01-23 13:49:35 +0100
committerQt by Nokia <qt-info@nokia.com>2012-01-31 04:55:00 +0100
commit8f6ee81ee97bd89df9bbc6d4353df05542c3ac64 (patch)
tree0ce4f7c5871508568dc486227b4b440023003603 /src/plugins/platforms/directfb
parente03386945f42fdb4d0dc6a98d1883ebb2d034aff (diff)
directfb: Use QPlatformPixmap::fromFile for Qt resources
Move to fromFile to load Qt resources for two reasons. The first is that ::fromData creates a QBuffer on our raw data and is passing that to the QImageReaders. Right now we there is a QFile -> QByteArray -> QBuffer transition that wastes cycles. The other reason is that QPlatformPixmap::fromData did/does not check if the decoded image is null and might cause a crash because of that. Change-Id: I7cb92d84874323e7205ab28883cc0fe9ecca1e27 Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
Diffstat (limited to 'src/plugins/platforms/directfb')
-rw-r--r--src/plugins/platforms/directfb/qdirectfbblitter.cpp10
1 files changed, 2 insertions, 8 deletions
diff --git a/src/plugins/platforms/directfb/qdirectfbblitter.cpp b/src/plugins/platforms/directfb/qdirectfbblitter.cpp
index e1b46e86d3..acd6dc9900 100644
--- a/src/plugins/platforms/directfb/qdirectfbblitter.cpp
+++ b/src/plugins/platforms/directfb/qdirectfbblitter.cpp
@@ -247,14 +247,8 @@ bool QDirectFbBlitterPlatformPixmap::fromFile(const QString &filename, const cha
return QBlittablePlatformPixmap::fromFile(filename, format, flags);
// Deal with resources
- if (filename.startsWith(QLatin1Char(':'))) { // resource
- QFile file(filename);
- if (!file.open(QIODevice::ReadOnly))
- return false;
- const QByteArray data = file.readAll();
- file.close();
- return fromData(reinterpret_cast<const uchar*>(data.constData()), data.size(), format, flags);
- }
+ if (filename.startsWith(QLatin1Char(':')))
+ return QBlittablePlatformPixmap::fromFile(filename, format, flags);
// Try to use directfb to load it.
DFBDataBufferDescription description;