aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmlprofiler/pixmapcachemodel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/qmlprofiler/pixmapcachemodel.cpp')
-rw-r--r--src/plugins/qmlprofiler/pixmapcachemodel.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/plugins/qmlprofiler/pixmapcachemodel.cpp b/src/plugins/qmlprofiler/pixmapcachemodel.cpp
index 6ea4d5db2b..5af3a12402 100644
--- a/src/plugins/qmlprofiler/pixmapcachemodel.cpp
+++ b/src/plugins/qmlprofiler/pixmapcachemodel.cpp
@@ -208,9 +208,10 @@ void PixmapCacheModel::loadEvent(const QmlEvent &event, const QmlEventType &type
PixmapState &state = pixmap.sizes[newEvent.sizeIndex];
if (state.cacheState == ToBeCached) {
- m_lastCacheSizeEvent = updateCacheCount(m_lastCacheSizeEvent, pixmapStartTime,
- state.size.width() * state.size.height(), newEvent,
- event.typeIndex());
+ m_lastCacheSizeEvent = updateCacheCount(
+ m_lastCacheSizeEvent, pixmapStartTime,
+ (qint64) state.size.width() * (qint64) state.size.height(),
+ newEvent, event.typeIndex());
state.cacheState = Cached;
}
break;
@@ -230,7 +231,7 @@ void PixmapCacheModel::loadEvent(const QmlEvent &event, const QmlEventType &type
} else if (!uncache && i->cacheState == Uncached) {
newEvent.sizeIndex = i - pixmap.sizes.begin();
if (i->size.isValid()) {
- pixSize = i->size.width() * i->size.height();
+ pixSize = (qint64) i->size.width() * i->size.height();
i->cacheState = Cached;
} else {
i->cacheState = ToBeCached;
@@ -247,7 +248,7 @@ void PixmapCacheModel::loadEvent(const QmlEvent &event, const QmlEventType &type
if (uncache && (i->cacheState == Cached || i->cacheState == ToBeCached)) {
newEvent.sizeIndex = i - pixmap.sizes.begin();
if (i->size.isValid())
- pixSize = -i->size.width() * i->size.height();
+ pixSize = (qint64) -i->size.width() * i->size.height();
i->cacheState = Uncached;
break;
} else if (!uncache && i->cacheState == Uncacheable) {