Home > Zune Error > Zune Leap Year Bug

Zune Leap Year Bug


Since the initial year is 1980, the IsLeapYear predicate returns true, and we enter the consequent clause. Read the full review Related: Digital Audio Players Home Audio Microsoft You Might Like recommended for you ZuneGate '08: What Really Happened! Rather it’s the even more commonplace observation that software is hard.” "Software is hard" implies you should not rewrite software that works; e.g. It should be good until the year 2100. // calculate the year from 1980 = 0 year = (days * 4 - 4) / 1461; // calculate the day within that http://thetechevent.com/zune-error/zune-error-leap-year.html

Especially with leap years and the ‘every four, but not every one hundred, but every four hundred' decision tree that people do seem to keep getting wrong. I don't think I've ever seen it… Is it C? The not-so-neat thing is that these kinds of code defects, which are really just team defects, are also very much present in software that needs to be secure, unlike this one However, it's a good idea to sync your Zune with your computer once the freeze has been resolved, just to make sure your usage rights are up to date.

Zune Leap Year Bug

But if anyone from Microsoft and Freescale ever wants to do the software-development community a service by reporting the history of how the bug slipped through, it would be particularly interesting So most likely the bug wasn't even Microsoft's, and other Freescale hardware using this same boilerplate code suffers the same fate. At the time, Microsoft mentioned that it would be phasing out the older models slowly--but the company didn't say the change would be this dramatic. After spending some hours futzing about with the problem, and finding awful bugs in several of my own attempts, I'm not so sure there's a simple and satisfying solution.

Or have the authors done the right thing by putting the full logic into the code, just in case someone later decided to extend the MAXYEAR deadline past 2100? Read the full review Microsoft Zune 120 GB TechHive Rating The Zune 120GB is a worthy alternative to the iPod Classic, however many of its cool new features come at a Browse for solutions or sign in and post a comment. felten says: January 12, 2009 at 3:21 pm Thanks for pointing out this error.

year = ORIGINYEAR; /* = 1980 */ while (days > 365) { if (IsLeapYear(year)) { if (days > 366) { days -= 366; year += 1; } } else { days So the thing just keeps running and running… until 24 hours have passed and int day receives a new value. Get help from the community Ambassador chat Chat one on one with a fellow Xbox User who wants to help. Changing it into a simple loop (if i++>=10; i=0) greatly shortned the ISR.

Load the java applet on the page below and play around. And both of these routines can leave the variable days with a negative value, which is also nonsensical. If you read the "Calculation" section of this wikipedia page, you will see that there is an arithmetic algorithm for calculating the date corresponding to a give JD. Stefan Ciobaca says: 4 January 2009 at 5:38 am @brian: days is an argument, not a global, not volatile, therefore there is no (reasonable) way it is updated in the background.

Microsoft Zune

Because there were 366 days in 1980, and 10592 minus 366 is 10226.) Applying the same logic repeatedly, we can figure out how many days had passed since January 1 of You'd think that date software would be common across all of them. Zune Leap Year Bug I'm pretty familiar with Microsoft's coding practices, and I can assure you, a bug this basic would never have passed code review. Brian, be proud of your writing and let it be known it's yours!

The latter can be at the bottom, but the rest should appear at the top in some form so readers know whose voice we're "hearing" and from when. http://thetechevent.com/zune-error/zune-error-87.html An abstract interpretation of the original program would reveal that there is a possible control flow in the loop body where none of the loop variables is modified, namely, when days>365 In many counting problems there's doubt about how to begin. We expect the internal clock on the Zune 30GB devices will automatically reset tomorrow (noon, GMT).

Download or install the Zune Music + Video software Download and save the most recent version of the Zune software package. Popular Resources Predicts 2016: Excellent Customer Experiences Hinge on Continuous Digital Experiences Identifying the Right Solution for Your Business See All Go

© Copyright 2017 thetechevent.com. All rights reserved.