Una alternativa de Noxtrum al bug de Firefox
Al hilo del comentario de JM sobre Noxtrum en el anterior post, donde me comentaba que el problema se debía a un bug en Firefox, cogí una linterna y un paraguas e indagué un poco en los javascriptses de Noxtrum. Tras años de investigación raspando código y haciendo pruebas unitarias -u onanistas-, localicé finalmente el problema con un sencilla búsqueda de texto de la palabra “unshift” en los js de marras.
Parece ser que la función donde peta se encuentra en un tal /javascript/cestel.queue.js, y tiene tal pinta:
this.enqueueAtFirst = function(obj)
{
this.data.unshift(obj); // Arrghh
this.data.length=this.size;
}
(El “// Arrghh” es mío)
El manual de javascript me dice que el método unshift agrega un elemento al principio del array y devuelve la longitud resultante del nuevo array. A Firefox todo le parece muy bien pero si el array se queda vacío tiene posiciones vacías se produce cierta esquizofrenia en algunos punteros.
Veamos.. ¿qué puedo utilizar para que no se queje mi amado Firefox? A ver, a ver, algún otro método que me resuelva la papeleta.. mmm.. podría utilizar concat, uno los dos arrays y santas pascuas:
this.enqueueAtFirst = function(obj)
{
this.data = [obj].concat(this.data); // Aquí he metido mano
this.data.length=this.size;
}
Y ahora parece que no se queja Firefox y además sigue funcionando en Internet Exploter. La moraleja de todo esto es que me ha llevado unos quince minutos plantear una alternativa al error, así que tengo claro que no lo modifican porque habrá alguien que no lo ve significativo. Y no me refiero al equipo de desarrollo, donde habrá gente mucho más capacitada que yo.
Por otra parte, y a raíz de trastear un poco el código de cliente de Noxtrum, enhorabuena a los programadores, que se lo han currado.

Hola Pau, me siento halagado por que mi comentario haya iniciado tus investigaciones, y por que me hayas contestado tan rápido, gracias.
La verdad es que no comprendo cómo si es tan sencillo el problema persiste. No me parece un argumento de rigor que si no lo modifican es porque no lo ven significativo… Firefox es hoy en día un navegador que está creciendo entre los internautas a pasos agigantados, y no veo por qué les va a interesar que el navegador tenga esa incidencia.
En la página de Noxtrum, arriba a la derecha, hay un apartado llamado Opina, en el que se pide a los usuarios que les envíen los errores que veamos, y dejan un correo: noxtrum@noxtrum.com
Podrías enviarles esta solución a ver si te dicen algo, y esclarecemos un poco el asunto.
Y me parece muy bien que hayas reflexionado sobre la labor de los becarios, rectificar es de sabios ;) Y es cierto, solucionar problemas de coordinación nos quitaría muchos quebraderos de cabeza.
La verdad es que me picaba la curiosidad y estas pruebas se hacen en un plis-plas. A mí tampoco me parece un argumento de rigor aquello que dije sobre que no lo ven como un error significativo, pero en fin, es lo único que se me ocurre y no alcanzo a más.
Lo de enviarles un correo está bien, aunque estoy convencido de que están al tanto y no lo actualizan por motivos que se me escapan.
Un saludo