summaryrefslogtreecommitdiffstats
path: root/make/config/jogl/glx-CustomCCode.c
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2014-03-11 01:44:31 +0100
committerSven Gothel <[email protected]>2014-03-11 01:44:31 +0100
commitfdea8596b2ccc1221a980e4c9fd10de85d885a3c (patch)
treec04dd20cd2c6c8855b3ae12f187f973751b9f9ed /make/config/jogl/glx-CustomCCode.c
parentfdd60adb1d421f2018b47ee17e9079c94b54910f (diff)
Bug 961: Fix commit fdd60adb1d421f2018b47ee17e9079c94b54910f (memmove byte-count)
memmove's byte-count was just giving the element-count, missing the element-size multiplier to actually pass byte-count
Diffstat (limited to 'make/config/jogl/glx-CustomCCode.c')
-rw-r--r--make/config/jogl/glx-CustomCCode.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/make/config/jogl/glx-CustomCCode.c b/make/config/jogl/glx-CustomCCode.c
index 3f5cf1121..b077c65ac 100644
--- a/make/config/jogl/glx-CustomCCode.c
+++ b/make/config/jogl/glx-CustomCCode.c
@@ -141,13 +141,16 @@ Java_jogamp_opengl_x11_glx_GLX_dispatch_1glXChooseFBConfig(JNIEnv *env, jclass _
count = _nitems_ptr[0];
if (NULL == _res) return NULL;
- /** Bug 961: Validate returned 'GLXFBConfig *', i.e. remove NULL pointer. */
+ /**
+ * Bug 961: Validate returned 'GLXFBConfig *', i.e. remove NULL pointer.
+ * Note: sizeof(GLXFBConfig) == sizeof(void*), a.k.a a pointer
+ */
// fprintf(stderr, "glXChooseFBConfig.0: Count %d\n", count);
i=0;
while( i < count ) {
if( NULL == _res[i] ) {
if( 0 < count-i-1 ) {
- memmove(_res+i, _res+i+1, count-i-1);
+ memmove(_res+i, _res+i+1, (count-i-1)*sizeof(GLXFBConfig));
}
count--;
} else {
@@ -188,12 +191,15 @@ Java_jogamp_opengl_x11_glx_GLX_dispatch_1glXGetFBConfigs(JNIEnv *env, jclass _un
count = _nelements_ptr[0];
if (NULL == _res) return NULL;
- /** Bug 961: Validate returned 'GLXFBConfig *', i.e. remove NULL pointer. */
+ /**
+ * Bug 961: Validate returned 'GLXFBConfig *', i.e. remove NULL pointer.
+ * Note: sizeof(GLXFBConfig) == sizeof(void*), a.k.a a pointer
+ */
i=0;
while( i < count ) {
if( NULL == _res[i] ) {
if( 0 < count-i-1 ) {
- memmove(_res+i, _res+i+1, count-i-1);
+ memmove(_res+i, _res+i+1, (count-i-1)*sizeof(GLXFBConfig));
}
count--;
} else {