Bug 1292923 - Don't upload to textures during creation on Intel cards as it frequently crashes. r=dvander
This commit is contained in:
@@ -1088,7 +1088,8 @@ TextureClient::CreateForDrawing(TextureForwarder* aAllocator,
|
||||
(!!(aAllocFlags & ALLOC_FOR_OUT_OF_BAND_CONTENT) &&
|
||||
DeviceManagerDx::Get()->GetContentDevice())) &&
|
||||
aSize.width <= aMaxTextureSize &&
|
||||
aSize.height <= aMaxTextureSize)
|
||||
aSize.height <= aMaxTextureSize &&
|
||||
!(aAllocFlags & ALLOC_UPDATE_FROM_SURFACE))
|
||||
{
|
||||
data = DXGITextureData::Create(aSize, aFormat, aAllocFlags);
|
||||
}
|
||||
@@ -1202,8 +1203,9 @@ TextureClient::CreateFromSurface(KnowsCompositor* aAllocator,
|
||||
|
||||
// Fall back to using UpdateFromSurface
|
||||
|
||||
TextureAllocationFlags allocFlags = TextureAllocationFlags(aAllocFlags | ALLOC_UPDATE_FROM_SURFACE);
|
||||
RefPtr<TextureClient> client = CreateForDrawing(aAllocator, aSurface->GetFormat(), size,
|
||||
aSelector, aTextureFlags, aAllocFlags);
|
||||
aSelector, aTextureFlags, allocFlags);
|
||||
if (!client) {
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user