diff options
author | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-07-11 10:40:15 +0200 |
---|---|---|
committer | Allan Sandfeld Jensen <allan.jensen@qt.io> | 2017-12-05 11:55:26 +0000 |
commit | b8ab18dfe84567f8eedd84291d7b650b586e12ee (patch) | |
tree | d8b5050ed922ba137ce83de2510db562ffd2ed34 /src/imports | |
parent | 184c5470f534119b27c1a4caec29d699aba9c234 (diff) |
Fix deprecation warning
Use sizeInBytes instead of byteCount for huge QImage support.
Change-Id: Iad1c61e68a88521d23ff9652ae0507f574b003b0
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
Diffstat (limited to 'src/imports')
-rw-r--r-- | src/imports/sharedimage/qsharedimageloader.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/imports/sharedimage/qsharedimageloader.cpp b/src/imports/sharedimage/qsharedimageloader.cpp index fb96a79187..ee862b6a77 100644 --- a/src/imports/sharedimage/qsharedimageloader.cpp +++ b/src/imports/sharedimage/qsharedimageloader.cpp @@ -117,7 +117,7 @@ void QSharedImageLoaderPrivate::storeImageToMem(void *data, const QImage &img) h->format = img.format(); uchar *p = static_cast<uchar *>(data) + sizeof(SharedImageHeader); - memcpy(p, img.constBits(), img.byteCount()); + memcpy(p, img.constBits(), img.sizeInBytes()); } @@ -174,8 +174,11 @@ QImage QSharedImageLoaderPrivate::load(const QString &path, QSharedImageLoader:: QImage img = q->loadFile(path, params); if (img.isNull()) return nil; - int size = sizeof(SharedImageHeader) + img.byteCount(); - if (shm->create(size)) { + size_t size = sizeof(SharedImageHeader) + img.sizeInBytes(); + if (size > std::numeric_limits<int>::max()) { + qCDebug(lcSharedImage) << "Image" << path << "to large to load"; + return nil; + } else if (shm->create(int(size))) { qCDebug(lcSharedImage) << "Created new shm segment of size" << size << "for image" << path; if (!shm->lock()) { qCDebug(lcSharedImage) << "Lock1 failed!?" << shm->errorString(); |