Hace 15 años | Por DrGregoryHouse a fayerwayer.com
Publicado hace 15 años por DrGregoryHouse a fayerwayer.com

Para los más fanáticos o para aquellos que requieren de una explicación lógica ante un problema complejo, ya está disponible el código de programación que hizo que miles de reproductores Zune dejaran de funcionar colectivamente. Lo que pasa es que en el caso del último día de un año bisiesto, continúa hasta que llega a 366. [...]

Comentarios

g

En el articulo solo mencionan esta fuente:

http://pastie.org/349916

Cualquiera pudo haber puesto el codigo alli ...

D

Ya se menea cualquier cosa que deje mal a Hasefroch, aunque no la fuente no tenga credibilidad ninguna; no me extraña que Norton bloquee a menéame.
Norton bloquea página de Menéame por fraudulenta



A ver cuanto tarda en salir el código fuente de Windows 7 que corrompe los archivos mp3.

jotape

#16 eso siempre te va a printar el "WTF" (y encima te cargarás el valor que haya en la variable days lol)

D

#6 yo digo lo mismo, la única fuente del artículo es una web de "copy&paste", sin poner de donde viene.

jss

Un error de becario.

luchoedu

if (days = 367)


">

jm22381

Y el 31/12/2008 Skynet se despertó y dijo: "Matad a todos los iPhones!"

D

Relacionada: Error del fin del mundo para los Zune de 30gb

Hace 15 años | Por mezvan a neoteo.com


Envíos anteriores: http://meneame.net/search.php?q=codigo fuente zune

Re-envío la noticia dado que los envíos anteriores fueron auto-descartados por que no funcionaba el link

D



Modo de empleo: archivo.php?var=inutil

¡El primer script PHP que dice la verdad sobre Zune!

D

#6, #7, #9... tal vez, o tal vez no:
- Opción 1: un niñato se pone a escribir 767 líneas de código para quedar guay
- Opción 2: alguien que trabaja para Microsoft, Freescale, o alguna otra empresa con acceso al código, le da al copy+paste pero no quiere que le pillen

La verdad, puede que sea la primera, pero me parece más simple la segunda.

Sandevil

#2 ... Y como los Zune, querían ser en realidad iphones, se suicidaron en masa, y colorin colorado..

z

#24 En ese código sólo compruebas si es bisiesto el año inicial desde el que se cuentan los días ( 1980 ), presupones que todos los años desde la fecha son no bisiestos.

Un saludo

PD: en 2080 tambien peta
PD1: se cae el rumor

D

#20 ERROR: no es $_GET[var], sino $_GET['var'] lol

http://sysd.es/archivo.php?var=inutil

D

Microsoft, esos grandes programadores

d

#24 Envía ese código a Microsoft ... igual te suben el parche en la próxima release ...

v

La coletilla final "Si el error no se arregla, lo mismo va a suceder el 31 de diciembre del 2012… Microsoft, tienes 3 años… ¿alcanzarás?" es ironía o es que el autor no sabe restar? Entre el 2 de enero de 2009 y el 31 de diciembre de 2012 no van 3 años, sino 3 años y 364 días. O sea, redondeando, 4 años.

D

Desde cuando hay código accesible de algún producto estratégico de Microsoft. Una noticia sin fuentes confiables es un fake en toda regla.

genderbender

#3 Error de becario de historia del arte que se sento sin querer en el teclado. Me parto.

Gazza

¿Y todo lo que se les suele echar en cara a los periodistas sobre contrastar informaciones y todo eso dónde quedó? Ah, que es sobre Microsoft.

D

#3 ¿de becario? No jodas... Eso es por no usar el puto cerebro, no es cuestión de experiencia laboral.

r

Darkfinal tenía razón lol y ya dijo esto en su día
error-fin-mundo-para-zune-30gb#comment-29

D

Os admiro a los programadores. En serio, os admiro.

m

Esta noticia es más falsa que un billete de 300€. No me extrañaria que fuera un coletazo del 28 de diciembre.

D

Ese código es bastante malo. En medio de esa basura, es comprensible que se cuele un error.

Debería ser mucho más sencillo:

if (IsLeapYear(year))

else


while days > daysofyear
{
days -= daysofyear;
year += 1;

etc.
Sin código repetido ni condiciones dentro del bucle.

jotape

¿Desde cuando el Zune es open source? ¿Sus afortunados poseedores podrán fixear el bug y recompilar las sources? roll

D

Usando congruencias no pasa roll

heffeque

#19 Efectivamente, falta el "==" lol

D

pues me parece un arte lograr meter una cosa así y que parezca un accidente, alguien se debe estar partiendo de risa

m

Este código no tiene pies ni cabeza, yo por lo menos no me creo que hayan hecho esto, que aún con la prueba de unidad más simple se detectaría el error al instante.

D

A mi me parece que ese código fuente es un fake como una casa...

D

#30 Je je, ¿ que te crees que significa el "etc." ?

El código, tal y cómo lo has entendido, no presupondría que sean bisiestos o no, sino que son todos cómo el inicial.

D

Chistes de informaticos...no entiendo nada lol

m

Es tan estupido el error que no tiene sentido. Y encima al ser Microsoft.. y que ademas se conozca el codigo fuente...

La verdad.. me esperaba una broma de alguno de los programadores.. Una jodienda de alguno que despidieron.. Pero esto?? lol

test

#16 #24 Creo que no habeis pillado lo que hace la función ConvertDays, volver a releerla bien atentamente.

La solucion seria poner:
if (IsLeapYear(year) && days > 366)

eliminando el "if" anidado

editado:
explico:
#16 el 367 es un valor perfectamente normal si por ejemplo el ORIGINYEAR fuese no-bisiesto y estuvieramos a 2 de enero del año siguiente (o a 1 de enero del año siguiente si fuese bisiesto)

#24 Lo que hace la funcion es contar los años transcurridos a partir del dia 0 teniendo en cuenta que el dia 0 fue en el año CURRENTYEAR. Los dias que han transcurrido son los "days". Tal y como has puesto tu, solo calcula una vez si el año es bisiesto o no, y hay que hacerlo en cada vuelta. Evidentemente hay formas mas finas de hacerlo, pero tu forma no funcionaria.