Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Crash from TextObjectFilterRender

Abierto
#1,830 7 comentarios 0 reacciones 1 asignado Ver en GitHub

Los mantenedores suelen responder en 2 días

@pedroSG94 ya está trabajando en esto.

Desde el 6/6/2025.

Evaluación

Este issue todavía no se ha evaluado.

Descripción

bug unable to reproduce

Hi,

I noticed a new crash that happens sometimes when i add a TextObjectFilterRender overlay. I started happening after 2.5.7. The only addition I see that could be related is the abstract void disableResources() method.
This is the exception I get:

Fatal Exception: java.lang.IllegalArgumentException: bitmap is recycled
     at android.opengl.GLUtils.texImage2D(GLUtils.java:152)
     at com.pedro.encoder.input.gl.TextureLoader.load(TextureLoader.java:41)
     at com.pedro.encoder.input.gl.render.filters.object.BaseObjectFilterRender.drawFilter(BaseObjectFilterRender.java:109)
     at com.pedro.encoder.input.gl.render.filters.object.TextObjectFilterRender.drawFilter(TextObjectFilterRender.java:48)
     at com.pedro.encoder.input.gl.render.filters.BaseFilterRender.draw(BaseFilterRender.java:72)
     at com.pedro.encoder.input.gl.render.MainRender.drawFilters(MainRender.kt:69)
     at com.pedro.library.view.GlStreamInterface.draw(GlStreamInterface.kt:280)
     at com.pedro.library.view.GlStreamInterface.onFrameAvailable$lambda$4(GlStreamInterface.kt:295)
     at com.pedro.library.view.GlStreamInterface.$r8$lambda$0B-KT4vcqgQlJR7AIT7c70zbmo0()
     at com.pedro.library.view.GlStreamInterface$$ExternalSyntheticLambda3.run(D8$$SyntheticClass)
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
     at java.lang.Thread.run(Thread.java:1012)

line 41 in TextureLoader is

GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, bitmaps[i], 0);

I wrapped it in

        if (!bitmaps[i].isRecycled()) {
          GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, bitmaps[i], 0);
        } else {
          GLUtils.texImage2D(GLES20.GL_TEXTURE_2D, 0, Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_8888), 0);
        }

and the exception doesn't happen anymore. Does this look like a good fix to you? @pedroSG94

Lenguaje dominante
Kotlin
Estrellas
3k
Forks
946
Merge medio
4 d 6 h
PR fusionados (30 d)
9

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de pedroSG94/RootEncoder

Todos los issues de pedroSG94/RootEncoder

Issues similares

Más issues de Kotlin

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.