macOS: Handle missing color space information in IOSurface backingstore
Fixes: QTBUG-80972 Change-Id: Iab3f1a9cf03251340e5f32bcc73103428e93282d Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> (cherry picked from commit 105e662221cc90d5002e06c97febf50c5c601336)
This commit is contained in:
parent
2a0186420c
commit
25e20ae39e
@ -89,9 +89,16 @@ QIOSurfaceGraphicsBuffer::~QIOSurfaceGraphicsBuffer()
|
||||
|
||||
void QIOSurfaceGraphicsBuffer::setColorSpace(QCFType<CGColorSpaceRef> colorSpace)
|
||||
{
|
||||
Q_ASSERT(colorSpace);
|
||||
IOSurfaceSetValue(m_surface, CFSTR("IOSurfaceColorSpace"),
|
||||
QCFType<CFPropertyListRef>(CGColorSpaceCopyPropertyList(colorSpace)));
|
||||
static const auto kIOSurfaceColorSpace = CFSTR("IOSurfaceColorSpace");
|
||||
|
||||
qCDebug(lcQpaIOSurface) << "Tagging" << this << "with color space" << colorSpace;
|
||||
|
||||
if (colorSpace) {
|
||||
IOSurfaceSetValue(m_surface, kIOSurfaceColorSpace,
|
||||
QCFType<CFPropertyListRef>(CGColorSpaceCopyPropertyList(colorSpace)));
|
||||
} else {
|
||||
IOSurfaceRemoveValue(m_surface, kIOSurfaceColorSpace);
|
||||
}
|
||||
}
|
||||
|
||||
const uchar *QIOSurfaceGraphicsBuffer::data() const
|
||||
|
Loading…
x
Reference in New Issue
Block a user