Pessoal, alguém sabe o que estou fazendo errado?? Quero chamar uma função da dll que recebe como parâmetros um vetor de bytes, x, y e retorna como referência o vetor bufferRet que estou declarando na função).
JNIEXPORT jbyteArray JNICALL Java_ClassePrincipal_Marcar (JNIEnv *env, jobject obj, jbyteArray buffer, jint x, jint y)
{
jclass cls = env->GetObjectClass(obj);
jbyte * vals = env->GetByteArrayElements(buffer,0);
char *bufferRet = new char[1024*1024];
Marcar(vals, x, y, bufferRet);
return (jbyteArray)bufferRet;
}
O problema é que o bufferRet não é o vetor 1024*1024 que eu esperava, um NullPointerException ocorre quando tento acessá-lo. Alguém sabe a possivel causa disso?