Skip to content

Tarea #4046 - fix bug bucle infinito limit 0#1901

Merged
NeoRazorX merged 1 commit intoNeoRazorX:masterfrom
elguitarraverde:Tarea-#4046---fix-bug-bucle-infinito-limit-0
Mar 11, 2026
Merged

Tarea #4046 - fix bug bucle infinito limit 0#1901
NeoRazorX merged 1 commit intoNeoRazorX:masterfrom
elguitarraverde:Tarea-#4046---fix-bug-bucle-infinito-limit-0

Conversation

@elguitarraverde
Copy link
Copy Markdown
Contributor

Descripción

  • Hemos detectado un BUG en los EditController de FacturaScripts. Al intentar cargar datos utilizando el método loadData(), si le pasamos los parámetros offset y limit, y establecemos limit = 0, el listado resultante genera un error.

El origen del problema se encuentra en la clase Core/Lib/ExtendedController/BaseView.php, específicamente en la línea 286. Hay un bucle while que, bajo la condición de limit = 0, entra en un bucle infinito, lo que impide que el listado se muestre correctamente y provoca un fallo en la aplicación.

¿Por qué devolver [] cuando limit <= 0?

limit = 0 semánticamente significa "sin límite" o "todos los registros en una sola página", por lo que la paginación no aplica → devolver array vacío es coherente con lo que ya hace el return final (count($pages) > 1 ? $pages : []).
Evita el bucle infinito de forma limpia sin alterar la lógica existente.
Si en tu caso de negocio limit = 0 deba interpretarse como "mostrar todo", el lugar correcto para manejarlo sería en loadData() antes de llamar a getPagination(), no aquí.

¿Cómo has probado los cambios?

Toda modificación debe haber sido mínimamente probada. Marca o describe las pruebas que has realizado:

  • He revisado mi código antes de enviarlo.
  • He probado que funciona correctamente en mi PC.
  • He probado que funciona correctamente con una base de datos vacía.
  • He ejecutado los tests unitarios.

@NeoRazorX NeoRazorX merged commit a072270 into NeoRazorX:master Mar 11, 2026
2 of 22 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants