Added missing include.

This commit is contained in:
Ioannis Tsakpinis 2011-05-11 14:21:59 +00:00
parent ce777ef350
commit d53afc0b4d
2 changed files with 13 additions and 7 deletions

View File

@ -80,12 +80,8 @@ public class PointerBuffer implements Comparable {
* @param source the source buffer
*/
public PointerBuffer(final ByteBuffer source) {
if ( !source.isDirect() )
throw new IllegalArgumentException("ByteBuffer is not direct");
final int alignment = is64Bit ? 8 : 4;
if ( (BufferUtils.getBufferAddress(source) + source.position()) % alignment != 0 || source.remaining() % alignment != 0 )
throw new IllegalArgumentException("The source buffer is not aligned to " + alignment + " bytes.");
if ( LWJGLUtil.CHECKS )
checkSource(source);
pointers = source.slice().order(source.order());
@ -98,6 +94,15 @@ public class PointerBuffer implements Comparable {
}
}
private static void checkSource(final ByteBuffer source) {
if ( !source.isDirect() )
throw new IllegalArgumentException("The source buffer is not direct.");
final int alignment = is64Bit ? 8 : 4;
if ( (BufferUtils.getBufferAddress(source) + source.position()) % alignment != 0 || source.remaining() % alignment != 0 )
throw new IllegalArgumentException("The source buffer is not aligned to " + alignment + " bytes.");
}
/**
* Returns the ByteBuffer that backs this PointerBuffer.
*

View File

@ -1,4 +1,5 @@
#include "org_lwjgl_BufferUtils.h"
#include "common_tools.h"
JNIEXPORT void JNICALL Java_org_lwjgl_BufferUtils_zeroBuffer0(JNIEnv *env, jclass clazz, jobject buffer, jlong offset, jlong size) {
memset((char*)(*env)->GetDirectBufferAddress(env, buffer) + (size_t)offset, 0, (size_t)size);
@ -6,4 +7,4 @@ JNIEXPORT void JNICALL Java_org_lwjgl_BufferUtils_zeroBuffer0(JNIEnv *env, jclas
JNIEXPORT jlong JNICALL Java_org_lwjgl_BufferUtils_getBufferAddress(JNIEnv *env, jclass clazz, jobject buffer) {
return (intptr_t)(*env)->GetDirectBufferAddress(env, buffer);
}
}