зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1200021 - crash in mozilla::layers::ContentClientDoubleBuffered::FinalizeFrame(nsIntRegion const&): Diagnostics to get more data. r=bas
This commit is contained in:
Родитель
b1c32e6929
Коммит
d7bc700e96
|
@ -401,7 +401,7 @@ Factory::CreateDrawTargetForData(BackendType aBackend,
|
|||
}
|
||||
#endif
|
||||
default:
|
||||
gfxDebug() << "Invalid draw target type specified.";
|
||||
gfxCriticalNote << "Invalid draw target type specified: " << (int)aBackend;
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
|
@ -410,7 +410,7 @@ Factory::CreateDrawTargetForData(BackendType aBackend,
|
|||
}
|
||||
|
||||
if (!retVal) {
|
||||
gfxDebug() << "Failed to create DrawTarget, Type: " << int(aBackend) << " Size: " << aSize;
|
||||
gfxCriticalNote << "Failed to create DrawTarget, Type: " << int(aBackend) << " Size: " << aSize << ", Data: " << hexa(aData) << ", Stride: " << aStride;
|
||||
}
|
||||
|
||||
return retVal.forget();
|
||||
|
|
|
@ -151,9 +151,13 @@ already_AddRefed<DrawTarget>
|
|||
ImageDataSerializerBase::GetAsDrawTarget(gfx::BackendType aBackend)
|
||||
{
|
||||
MOZ_ASSERT(IsValid());
|
||||
return gfx::Factory::CreateDrawTargetForData(aBackend,
|
||||
RefPtr<DrawTarget> dt = gfx::Factory::CreateDrawTargetForData(aBackend,
|
||||
GetData(), GetSize(),
|
||||
GetStride(), GetFormat());
|
||||
if (!dt) {
|
||||
gfxCriticalNote << "Failed GetAsDrawTarget " << IsValid() << ", " << hexa(size_t(mData)) << " + " << SurfaceBufferInfo::GetOffset() << ", " << GetSize() << ", " << GetStride() << ", " << (int)GetFormat();
|
||||
}
|
||||
return dt.forget();
|
||||
}
|
||||
|
||||
already_AddRefed<gfx::DataSourceSurface>
|
||||
|
|
|
@ -845,6 +845,7 @@ BufferTextureClient::BorrowDrawTarget()
|
|||
|
||||
ImageDataSerializer serializer(GetBuffer(), GetBufferSize());
|
||||
if (!serializer.IsValid()) {
|
||||
gfxCriticalNote << "Invalid serializer " << IsValid() << ", " << IsLocked() << ", " << GetBufferSize();
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
|
@ -854,6 +855,9 @@ BufferTextureClient::BorrowDrawTarget()
|
|||
}
|
||||
|
||||
mDrawTarget = serializer.GetAsDrawTarget(BackendType::CAIRO);
|
||||
if (!mDrawTarget) {
|
||||
gfxCriticalNote << "BorrowDrawTarget failure, original backend " << (int)mBackend;
|
||||
}
|
||||
|
||||
return mDrawTarget;
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче