Bug 1323363 - Fix non-paranoid PBO uploads. - r=ethlin
MozReview-Commit-ID: L0nCELNAmBc
--- a/dom/canvas/TexUnpackBlob.cpp
+++ b/dom/canvas/TexUnpackBlob.cpp
@@ -416,18 +416,27 @@ TexUnpackBytes::TexOrSubImage(bool isSub
funcName);
if (gl->WorkAroundDriverBugs()) {
useParanoidHandling |= (gl->Vendor() == gl::GLVendor::NVIDIA);
}
}
if (!useParanoidHandling) {
+ if (webgl->mBoundPixelUnpackBuffer) {
+ gl->fBindBuffer(LOCAL_GL_PIXEL_UNPACK_BUFFER,
+ webgl->mBoundPixelUnpackBuffer->mGLName);
+ }
+
*out_error = DoTexOrSubImage(isSubImage, gl, target, level, dui, xOffset, yOffset,
zOffset, mWidth, mHeight, mDepth, uploadPtr);
+
+ if (webgl->mBoundPixelUnpackBuffer) {
+ gl->fBindBuffer(LOCAL_GL_PIXEL_UNPACK_BUFFER, 0);
+ }
return true;
}
//////
MOZ_ASSERT(webgl->mBoundPixelUnpackBuffer);
if (!isSubImage) {