--- a/dom/canvas/WebGL2Context.h
+++ b/dom/canvas/WebGL2Context.h
@@ -116,31 +116,31 @@ public:
template<typename T>
void CompressedTexImage3D(GLenum target, GLint level, GLenum internalFormat,
GLsizei width, GLsizei height, GLsizei depth, GLint border,
const T& anySrc, GLuint viewElemOffset = 0,
GLuint viewElemLengthOverride = 0)
{
const char funcName[] = "compressedTexImage3D";
const uint8_t funcDims = 3;
- const TexImageSourceAdapter src(anySrc, viewElemOffset, viewElemLengthOverride);
+ const TexImageSourceAdapter src(&anySrc, viewElemOffset, viewElemLengthOverride);
CompressedTexImage(funcName, funcDims, target, level, internalFormat, width,
height, depth, border, src);
}
template<typename T>
void CompressedTexSubImage3D(GLenum target, GLint level, GLint xOffset, GLint yOffset,
GLint zOffset, GLsizei width, GLsizei height,
GLsizei depth, GLenum unpackFormat, const T& anySrc,
GLuint viewElemOffset = 0,
GLuint viewElemLengthOverride = 0)
{
const char funcName[] = "compressedTexSubImage3D";
const uint8_t funcDims = 3;
- const TexImageSourceAdapter src(anySrc, viewElemOffset, viewElemLengthOverride);
+ const TexImageSourceAdapter src(&anySrc, viewElemOffset, viewElemLengthOverride);
CompressedTexSubImage(funcName, funcDims, target, level, xOffset, yOffset,
zOffset, width, height, depth, unpackFormat, src);
}
////////////////////////////////////
void CopyTexSubImage3D(GLenum target, GLint level, GLint xOffset, GLint yOffset,
GLint zOffset, GLint x, GLint y, GLsizei width,
@@ -154,27 +154,27 @@ public:
////////////////////////////////////
template<typename T>
void TexImage3D(GLenum target, GLint level, GLenum internalFormat, GLsizei width,
GLsizei height, GLsizei depth, GLint border, GLenum unpackFormat,
GLenum unpackType, const T& anySrc, ErrorResult& out_error)
{
- const TexImageSourceAdapter src(anySrc, &out_error);
+ const TexImageSourceAdapter src(&anySrc, &out_error);
TexImage3D(target, level, internalFormat, width, height, depth, border,
unpackFormat, unpackType, src);
}
void TexImage3D(GLenum target, GLint level, GLenum internalFormat, GLsizei width,
GLsizei height, GLsizei depth, GLint border, GLenum unpackFormat,
GLenum unpackType, const dom::ArrayBufferView& view,
GLuint viewElemOffset, ErrorResult&)
{
- const TexImageSourceAdapter src(view, viewElemOffset);
+ const TexImageSourceAdapter src(&view, viewElemOffset);
TexImage3D(target, level, internalFormat, width, height, depth, border,
unpackFormat, unpackType, src);
}
protected:
void TexImage3D(GLenum target, GLint level, GLenum internalFormat, GLsizei width,
GLsizei height, GLsizei depth, GLint border, GLenum unpackFormat,
GLenum unpackType, const TexImageSource& src)
@@ -189,28 +189,28 @@ protected:
public:
template<typename T>
void TexSubImage3D(GLenum target, GLint level, GLint xOffset, GLint yOffset,
GLint zOffset, GLsizei width, GLsizei height, GLsizei depth,
GLenum unpackFormat, GLenum unpackType, const T& anySrc,
ErrorResult& out_error)
{
- const TexImageSourceAdapter src(anySrc, &out_error);
+ const TexImageSourceAdapter src(&anySrc, &out_error);
TexSubImage3D(target, level, xOffset, yOffset, zOffset, width, height, depth,
unpackFormat, unpackType, src);
}
void TexSubImage3D(GLenum target, GLint level, GLint xOffset, GLint yOffset,
GLint zOffset, GLsizei width, GLsizei height, GLsizei depth,
GLenum unpackFormat, GLenum unpackType,
const dom::ArrayBufferView& srcView, GLuint srcElemOffset,
ErrorResult&)
{
- const TexImageSourceAdapter src(srcView, srcElemOffset);
+ const TexImageSourceAdapter src(&srcView, srcElemOffset);
TexSubImage3D(target, level, xOffset, yOffset, zOffset, width, height, depth,
unpackFormat, unpackType, src);
}
protected:
void TexSubImage3D(GLenum target, GLint level, GLint xOffset, GLint yOffset,
GLint zOffset, GLsizei width, GLsizei height, GLsizei depth,
GLenum unpackFormat, GLenum unpackType, const TexImageSource& src)
--- a/dom/canvas/WebGLContext.h
+++ b/dom/canvas/WebGLContext.h
@@ -215,50 +215,50 @@ protected:
memset(this, 0, sizeof(*this));
}
};
////
struct TexImageSourceAdapter final : public TexImageSource
{
- TexImageSourceAdapter(const dom::Nullable<dom::ArrayBufferView>& maybeView,
+ TexImageSourceAdapter(const dom::Nullable<dom::ArrayBufferView>* maybeView,
ErrorResult*)
{
- if (!maybeView.IsNull()) {
- mView = &(maybeView.Value());
+ if (!maybeView->IsNull()) {
+ mView = &(maybeView->Value());
}
}
- TexImageSourceAdapter(const dom::ArrayBufferView& view, ErrorResult*) {
- mView = &view;
+ TexImageSourceAdapter(const dom::ArrayBufferView* view, ErrorResult*) {
+ mView = view;
}
- TexImageSourceAdapter(const dom::ArrayBufferView& view, GLuint viewElemOffset,
+ TexImageSourceAdapter(const dom::ArrayBufferView* view, GLuint viewElemOffset,
GLuint viewElemLengthOverride = 0)
{
- mView = &view;
+ mView = view;
mViewElemOffset = viewElemOffset;
mViewElemLengthOverride = viewElemLengthOverride;
}
- TexImageSourceAdapter(WebGLsizeiptr pboOffset, GLuint ignored1, GLuint ignored2 = 0) {
- mPboOffset = &pboOffset;
+ TexImageSourceAdapter(const WebGLsizeiptr* pboOffset, GLuint ignored1, GLuint ignored2 = 0) {
+ mPboOffset = pboOffset;
}
- TexImageSourceAdapter(WebGLsizeiptr pboOffset, ErrorResult* ignored) {
- mPboOffset = &pboOffset;
+ TexImageSourceAdapter(const WebGLsizeiptr* pboOffset, ErrorResult* ignored) {
+ mPboOffset = pboOffset;
}
- TexImageSourceAdapter(const dom::ImageData& imageData, ErrorResult*) {
- mImageData = &imageData;
+ TexImageSourceAdapter(const dom::ImageData* imageData, ErrorResult*) {
+ mImageData = imageData;
}
- TexImageSourceAdapter(const dom::Element& domElem, ErrorResult* const out_error) {
- mDomElem = &domElem;
+ TexImageSourceAdapter(const dom::Element* domElem, ErrorResult* const out_error) {
+ mDomElem = domElem;
mOut_error = out_error;
}
};
////////////////////////////////////////////////////////////////////////////////
class WebGLContext
: public nsIDOMWebGLRenderingContext
@@ -1023,32 +1023,32 @@ public:
void CompressedTexImage2D(GLenum target, GLint level, GLenum internalFormat,
GLsizei width, GLsizei height, GLint border,
const T& anySrc, GLuint viewElemOffset = 0,
GLuint viewElemLengthOverride = 0)
{
const char funcName[] = "compressedTexImage2D";
const uint8_t funcDims = 2;
const GLsizei depth = 1;
- const TexImageSourceAdapter src(anySrc, viewElemOffset, viewElemLengthOverride);
+ const TexImageSourceAdapter src(&anySrc, viewElemOffset, viewElemLengthOverride);
CompressedTexImage(funcName, funcDims, target, level, internalFormat, width,
height, depth, border, src);
}
template<typename T>
void CompressedTexSubImage2D(GLenum target, GLint level, GLint xOffset, GLint yOffset,
GLsizei width, GLsizei height, GLenum unpackFormat,
const T& anySrc, GLuint viewElemOffset = 0,
GLuint viewElemLengthOverride = 0)
{
const char funcName[] = "compressedTexSubImage2D";
const uint8_t funcDims = 2;
const GLint zOffset = 0;
const GLsizei depth = 1;
- const TexImageSourceAdapter src(anySrc, viewElemOffset, viewElemLengthOverride);
+ const TexImageSourceAdapter src(&anySrc, viewElemOffset, viewElemLengthOverride);
CompressedTexSubImage(funcName, funcDims, target, level, xOffset, yOffset,
zOffset, width, height, depth, unpackFormat, src);
}
protected:
void CompressedTexImage(const char* funcName, uint8_t funcDims, GLenum target,
GLint level, GLenum internalFormat, GLsizei width,
GLsizei height, GLsizei depth, GLint border,
@@ -1112,27 +1112,27 @@ public:
////
template<typename T>
void TexImage2D(GLenum target, GLint level, GLenum internalFormat, GLsizei width,
GLsizei height, GLint border, GLenum unpackFormat, GLenum unpackType,
const T& anySrc, ErrorResult& out_error)
{
- const TexImageSourceAdapter src(anySrc, &out_error);
+ const TexImageSourceAdapter src(&anySrc, &out_error);
TexImage2D(target, level, internalFormat, width, height, border, unpackFormat,
unpackType, src);
}
void TexImage2D(GLenum target, GLint level, GLenum internalFormat, GLsizei width,
GLsizei height, GLint border, GLenum unpackFormat, GLenum unpackType,
const dom::ArrayBufferView& view, GLuint viewElemOffset,
ErrorResult&)
{
- const TexImageSourceAdapter src(view, viewElemOffset);
+ const TexImageSourceAdapter src(&view, viewElemOffset);
TexImage2D(target, level, internalFormat, width, height, border, unpackFormat,
unpackType, src);
}
protected:
void TexImage2D(GLenum target, GLint level, GLenum internalFormat, GLsizei width,
GLsizei height, GLint border, GLenum unpackFormat,
GLenum unpackType, const TexImageSource& src)
@@ -1152,27 +1152,27 @@ protected:
////
public:
template<typename T>
void TexSubImage2D(GLenum target, GLint level, GLint xOffset, GLint yOffset,
GLsizei width, GLsizei height, GLenum unpackFormat,
GLenum unpackType, const T& anySrc, ErrorResult& out_error)
{
- const TexImageSourceAdapter src(anySrc, &out_error);
+ const TexImageSourceAdapter src(&anySrc, &out_error);
TexSubImage2D(target, level, xOffset, yOffset, width, height, unpackFormat,
unpackType, src);
}
void TexSubImage2D(GLenum target, GLint level, GLint xOffset, GLint yOffset,
GLsizei width, GLsizei height, GLenum unpackFormat,
GLenum unpackType, const dom::ArrayBufferView& view,
GLuint viewElemOffset, ErrorResult&)
{
- const TexImageSourceAdapter src(view, viewElemOffset);
+ const TexImageSourceAdapter src(&view, viewElemOffset);
TexSubImage2D(target, level, xOffset, yOffset, width, height, unpackFormat,
unpackType, src);
}
protected:
void TexSubImage2D(GLenum target, GLint level, GLint xOffset, GLint yOffset,
GLsizei width, GLsizei height, GLenum unpackFormat,
GLenum unpackType, const TexImageSource& src)