Bug 1045955 - Make snapshots pick RGBA or RGBX. - r=kamidphish

This commit is contained in:
Jeff Gilbert 2014-08-07 19:03:24 -07:00
Родитель e460833f90
Коммит 4f8b794b06
2 изменённых файлов: 8 добавлений и 3 удалений

Просмотреть файл

@ -1477,9 +1477,13 @@ WebGLContext::GetSurfaceSnapshot(bool* aPremultAlpha)
if (!gl)
return nullptr;
RefPtr<DataSourceSurface> surf = Factory::CreateDataSourceSurfaceWithStride(IntSize(mWidth, mHeight),
SurfaceFormat::B8G8R8A8,
mWidth * 4);
bool hasAlpha = mOptions.alpha;
SurfaceFormat surfFormat = hasAlpha ? SurfaceFormat::B8G8R8A8
: SurfaceFormat::B8G8R8X8;
RefPtr<DataSourceSurface> surf;
surf = Factory::CreateDataSourceSurfaceWithStride(IntSize(mWidth, mHeight),
surfFormat,
mWidth * 4);
if (!surf) {
return nullptr;
}

Просмотреть файл

@ -812,6 +812,7 @@ GLBlitHelper::BlitTextureToFramebuffer(GLuint srcTex, GLuint destFB,
}
ScopedGLDrawState autoStates(mGL);
mGL->BindDrawFB(destFB);
// Does destructive things to (only!) what we just saved above.
bool good = UseTexQuadProgram(type, srcSize);