Feeds:
Posts
Comments

Posts Tagged ‘Zune’

On the last day of 2008, the 30GB Zune media players (released in 2006) were “frozen”.

Zune owners of the specific model, estimated to be about 1 million, could not boot their device.

So what was  the cause of this “glitch” ?
It was the fact that 2008 was a leap year, and therefore had an extra day.

Zune’s software had a serious coding bug, not allowing it to work properly until the first day of the next year, 2009.

A moderator over at the ZuneBoards forums, has exposed the exact buggy source code:

year = ORIGINYEAR; /* = 1980 */

while (days > 365)
{
    if (IsLeapYear(year))
    {
        if (days > 366)
        {
            days -= 366;
            year += 1;
        }
    }
    else
    {
        days -= 365;
        year += 1;
    }
}

If you are able to “read” code, you will immediately find out that at the last day of 2008, which is the 366th day, the firmware will not be able to get out of the while loop. This endless loop caused the Zune freeze.
Zune was able to boot again, when the year days were less or equal to 365, and that was exactly on the next day, 1-1-2009.

This must be one of the most entertaining bugs ever, and a good example of inadequate software testing.

Well, at least Microsoft has 4 years left to fix the bug, until the next leap year!

Read Full Post »