Erreur de script de rendu Android lors de l’atsortingbution du paramètre Out

je reçois une erreur

Fatal signal 11 (SIGSEGV) at 0x51b71000 (code=1), thread 3696 (sssist.magnitab) 

Chaque fois que j’atsortingbue une valeur au paramètre out pour renvoyer les valeurs de l’application principale, lorsque je supprime l’erreur d’atsortingbution disparaît, voici mon code (ci-dessous le code androïde)

  void root(const char *in, int *out, uint32_t x, uint32_t y) {\ int pixelData[size]; for (int i = 0; i <size ; i += 16) { //rsDebug("---------------:","3333"); int lumOne = in[i]; lumOne += 128; pixelData[lumOne]=pixelData[lumOne]+1; int lumTwo = in[i+2]; lumTwo += 128; //pixelData[lumTwo]++; pixelData[lumTwo]=pixelData[lumTwo]+1; } out[10]=23; } RenderScript mRS; mRS = RenderScript.create(activity); ScriptC_mono mScript; // Convert to Bitmap Allocation alloc = Allocation.createSized(mRS, Element.I8(mRS), array.length, Allocation.USAGE_SCRIPT); alloc.copyFrom(array); int[] ret = new int[array.length]; int[] ret2 = new int[array.length]; Allocation alloc_out = Allocation.createSized(mRS, Element.I32(mRS), array.length, Allocation.USAGE_SCRIPT); alloc_out.copyFrom(ret2); mScript = new ScriptC_mono(mRS, activity.getResources(),R.raw.mono); mScript.set_size(array.length); mScript.forEach_root(alloc, alloc_out); alloc_out.copyTo(ret2); //byte [] outarray = array; // mOutPixelsAllocation.copyTo(outarray); mRS.finish(); 

aidez-moi à corriger cela.

Vous ne devriez écrire que dans out [0] et jamais dans out [10]. Le pointeur de sortie est avancé automatiquement et root () est exécuté sur chaque cellule de vos allocations d’entrée / sortie. Chaque cellule individuelle a cette fonction appelée avec une paire de pointeurs entrée / sortie valide qui correspond vraiment à [y] [x], à la sortie [y] [x] (ou à 1D selon le cas).