gen
7th
Autore: Angelo Righi |
Programmazione
E’ stata chiarita l’origine del bug che il 31 dicembre ha messo ko il lettore multimediale Zune. Ebbene, dall’analisi del codice che ho trovato su questo blog il problema è da imputarsi ad un loop infinito!
Questo è il frammento di codice incriminato:
while (days > 365)
{
if (IsLeapYear(year))
{
if (days > 366)
{
days -= 366;
year += 1;
}
}
else
{
days -= 365;
year += 1;
}
}
alla riga 5 ( if (day > 366) ) si può vedere il bug: la variabile days non potrà mai essere maggiore di 366 (al massimo uguale). Quindi la variabile stessa non verrà mai decrementata e il ciclo while non potrà mai essere interrotto. Ed è esattamente quello che è successo alla mezzanotte del 31.
Gli utenti di Zune 30Gb possono stare tranquilli… fino al prossimo anno bisestile.
Altri articoli:
Z2K ovvero Y2K Reloaded (Zune Apocalypse)
Titolo abbastanza criptico, almeno per chi non possiede un Microsoft Zune 30Gb. Zune è il lettore multimediale... Numb3rs: le Misteriose Date che Piacciono Tanto ai Geek
I geek possono fare a meno di tutto tranne che delle stupidaggini. Per questo motivo forse oggi su Twitter... Torna il Millennium Bug e fa Impazzire Bancomat e SMS
Tutti se lo aspettavano 10 anni fa, ma non accadde (quasi) niente. In compenso negli anni successivi,... Come ritirare dal Bancomat usando un lettore MP3
Un uomo di Manchester, il quarantunenne Maxwell Parsons c\'ha provato e per un po\' gli è andata bene. Infatti...
Z2K ovvero Y2K Reloaded (Zune Apocalypse)
Titolo abbastanza criptico, almeno per chi non possiede un Microsoft Zune 30Gb. Zune è il lettore multimediale... Numb3rs: le Misteriose Date che Piacciono Tanto ai Geek
I geek possono fare a meno di tutto tranne che delle stupidaggini. Per questo motivo forse oggi su Twitter... Torna il Millennium Bug e fa Impazzire Bancomat e SMS
Tutti se lo aspettavano 10 anni fa, ma non accadde (quasi) niente. In compenso negli anni successivi,... Come ritirare dal Bancomat usando un lettore MP3
Un uomo di Manchester, il quarantunenne Maxwell Parsons c\'ha provato e per un po\' gli è andata bene. Infatti...


















1 Trackback(s)