diff options
author | Sven Gothel <[email protected]> | 2015-09-28 06:44:37 +0200 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2015-09-28 06:44:37 +0200 |
commit | dad07ad7f7e54c593e58fe3a7ace41bfe4f39b05 (patch) | |
tree | 60d9e7dfd77600ace60f10476f6204fa94744c7f | |
parent | 3235a4ae91e0202f9a36b8df4893f83be129dea2 (diff) |
Bug 1233 - Add missing range- and pbo-bound checks on glTexture[Sub]Image[123]D*
Adding missing range- and pbo-bound checks for:
- glTextureImage1DEXT
- glTextureImage2DEXT
- glTextureImage3DEXT
- glTextureSubImage1D
- glTextureSubImage1DEXT
- glTextureSubImage2D
- glTextureSubImage2DEXT
- glTextureSubImage3D
- glTextureSubImage3DEXT
-rw-r--r-- | make/config/jogl/gl-common.cfg | 65 |
1 files changed, 52 insertions, 13 deletions
diff --git a/make/config/jogl/gl-common.cfg b/make/config/jogl/gl-common.cfg index f22730472..54934002b 100644 --- a/make/config/jogl/gl-common.cfg +++ b/make/config/jogl/gl-common.cfg @@ -762,12 +762,22 @@ BufferObjectKind UnpackPixel glPixelMapuiv BufferObjectKind UnpackPixel glPixelMapusv BufferObjectKind UnpackPixel glPolygonStipple BufferObjectKind UnpackPixel glSeparableFilter2D + BufferObjectKind UnpackPixel glTexImage1D +BufferObjectKind UnpackPixel glTextureImage1DEXT BufferObjectKind UnpackPixel glTexImage2D +BufferObjectKind UnpackPixel glTextureImage2DEXT BufferObjectKind UnpackPixel glTexImage3D +BufferObjectKind UnpackPixel glTextureImage3DEXT BufferObjectKind UnpackPixel glTexSubImage1D +BufferObjectKind UnpackPixel glTextureSubImage1D +BufferObjectKind UnpackPixel glTextureSubImage1DEXT BufferObjectKind UnpackPixel glTexSubImage2D +BufferObjectKind UnpackPixel glTextureSubImage2D +BufferObjectKind UnpackPixel glTextureSubImage2DEXT BufferObjectKind UnpackPixel glTexSubImage3D +BufferObjectKind UnpackPixel glTextureSubImage3D +BufferObjectKind UnpackPixel glTextureSubImage3DEXT BufferObjectKind PackPixel glGetColorTable BufferObjectKind PackPixel glGetCompressedTexImage @@ -832,20 +842,49 @@ JavaPrologue glGetTexImage depth = tmp[0]; JavaPrologue glGetTexImage } # Range check directives for various image-related routines -RangeCheckBytes glColorTable 5 imageSizeInBytes({3}, {4}, {2} , 1 , 1 , false) -RangeCheckBytes glColorTableEXT 5 imageSizeInBytes({3}, {4}, {2} , 1 , 1 , false) -RangeCheckBytes glConvolutionFilter1D 5 imageSizeInBytes({3}, {4}, {2} , 1 , 1 , false) -RangeCheckBytes glConvolutionFilter2D 6 imageSizeInBytes({4}, {5}, {2} , {3} , 1 , false) -RangeCheckBytes glDrawPixels 4 imageSizeInBytes({2}, {3}, {0} , {1} , 1 , false) -RangeCheckBytes glReadPixels 6 imageSizeInBytes({4}, {5}, {2} , {3} , 1 , true) -RangeCheckBytes glTexImage1D 7 imageSizeInBytes({5}, {6}, {3} , 1 , 1 , false) -RangeCheckBytes glTexImage2D 8 imageSizeInBytes({6}, {7}, {3} , {4} , 1 , false) -RangeCheckBytes glTexImage3D 9 imageSizeInBytes({7}, {8}, {3} , {4} , {5} , false) -RangeCheckBytes glTexSubImage1D 6 imageSizeInBytes({4}, {5}, {3} , 1 , 1 , false) -RangeCheckBytes glTexSubImage2D 8 imageSizeInBytes({6}, {7}, {4} , {5} , 1 , false) -RangeCheckBytes glTexSubImage3D 10 imageSizeInBytes({8}, {9}, {5} , {6} , {7} , false) +# glTexImage1D( int target, int level, int internalFormat, int width, int border, int format, int type, Buffer pixels) +# glTextureImage1DEXT(int texture, int target, int level, int internalformat, int width, int border, int format, int type, Buffer pixels) +# glTexImage2D( int target, int level, int internalFormat, int width, int height, int border, int format, int type, Buffer pixels) +# glTextureImage2DEXT(int texture, int target, int level, int internalformat, int width, int height, int border, int format, int type, Buffer pixels) +# glTexImage3D( int target, int level, int internalformat, int width, int height, int depth, int border, int format, int type, Buffer pixels) +# glTextureImage3DEXT(int texture, int target, int level, int internalformat, int width, int height, int depth, int border, int format, int type, Buffer pixels) +# +# glTexSubImage1D( int target, int level, int xoffset, int width, int format, int type, Buffer pixels) +# glTextureSubImage1D( int texture, int level, int xoffset, int width, int format, int type, Buffer pixels) +# glTextureSubImage1DEXT(int texture, int target, int level, int xoffset, int width, int format, int type, Buffer pixels) +# glTexSubImage2D( int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, Buffer pixels) +# glTextureSubImage2D( int texture, int level, int xoffset, int yoffset, int width, int height, int format, int type, Buffer pixels) +# glTextureSubImage2DEXT(int texture, int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, Buffer pixels) +# glTexSubImage3D( int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, Buffer pixels) +# glTextureSubImage3D( int texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, Buffer pixels) +# glTextureSubImage3DEXT(int texture, int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, Buffer pixels) +# +# imageSizeInBytes(int format, int type, int width, int height, int depth, boolean pack) +# +RangeCheckBytes glColorTable 5 imageSizeInBytes({3}, {4}, {2}, 1 , 1 , false) +RangeCheckBytes glColorTableEXT 5 imageSizeInBytes({3}, {4}, {2}, 1 , 1 , false) +RangeCheckBytes glConvolutionFilter1D 5 imageSizeInBytes({3}, {4}, {2}, 1 , 1 , false) +RangeCheckBytes glConvolutionFilter2D 6 imageSizeInBytes({4}, {5}, {2}, {3}, 1 , false) +RangeCheckBytes glDrawPixels 4 imageSizeInBytes({2}, {3}, {0}, {1}, 1 , false) +RangeCheckBytes glReadPixels 6 imageSizeInBytes({4}, {5}, {2}, {3}, 1 , true) +RangeCheckBytes glTexImage1D 7 imageSizeInBytes({5}, {6}, {3}, 1 , 1 , false) +RangeCheckBytes glTextureImage1DEXT 8 imageSizeInBytes({6}, {7}, {4}, 1 , 1 , false) +RangeCheckBytes glTexImage2D 8 imageSizeInBytes({6}, {7}, {3}, {4}, 1 , false) +RangeCheckBytes glTextureImage2DEXT 9 imageSizeInBytes({7}, {8}, {4}, {5}, 1 , false) +RangeCheckBytes glTexImage3D 9 imageSizeInBytes({7}, {8}, {3}, {4}, {5}, false) +RangeCheckBytes glTextureImage3DEXT 10 imageSizeInBytes({8}, {9}, {4}, {5}, {6}, false) +RangeCheckBytes glTexSubImage1D 6 imageSizeInBytes({4}, {5}, {3}, 1 , 1 , false) +RangeCheckBytes glTextureSubImage1D 6 imageSizeInBytes({4}, {5}, {3}, 1 , 1 , false) +RangeCheckBytes glTextureSubImage1DEXT 7 imageSizeInBytes({5}, {6}, {4}, 1 , 1 , false) +RangeCheckBytes glTexSubImage2D 8 imageSizeInBytes({6}, {7}, {4}, {5}, 1 , false) +RangeCheckBytes glTextureSubImage2D 8 imageSizeInBytes({6}, {7}, {4}, {5}, 1 , false) +RangeCheckBytes glTextureSubImage2DEXT 9 imageSizeInBytes({7}, {8}, {5}, {6}, 1 , false) +RangeCheckBytes glTexSubImage3D 10 imageSizeInBytes({8}, {9}, {5}, {6}, {7}, false) +RangeCheckBytes glTextureSubImage3D 10 imageSizeInBytes({8}, {9}, {5}, {6}, {7}, false) +RangeCheckBytes glTextureSubImage3DEXT 11 imageSizeInBytes({9}, {10}, {6}, {7}, {8}, false) + # This may produce wrong answers for 1D textures -RangeCheckBytes glGetTexImage 4 imageSizeInBytes({2}, {3}, width , height , depth, true) +RangeCheckBytes glGetTexImage 4 imageSizeInBytes({2}, {3}, width, height, depth, true) # Note we don't support glTexImage4DSGIS / glTexSubImage4DSGIS # FIXME: add the following unpack operations: # glBitmap, glPolygonStipple |