Discover the best of the web!
Learn more about Digg by taking the tour.
The 25 Year Old UNIX Bug
osnews.com — 1983. The year of the IBM PC XT, the Apple Lisa, Pioneer 10 leaving the solar system, and Hooters opening up shop in Florida. It's also the birthyear of a 25 year old UNIX bug, squashed only a few days ago.
- 1908 diggs
- digg it
- wonderchemist, on 05/11/2008, -58/+23I'm waiting for someone to spin this by saying this is an example of how OS X never fixes its bugs promptly.
- heliox, on 05/11/2008, -3/+28You just did...thanks
- carrognia, on 05/11/2008, -37/+16wow, I must not be as geeky as I thought, because that just flew right over me...
or maybe it´s because it´s 2 in the morning over here...- santaliqueur, on 05/11/2008, -5/+49No big deal, you just demonstrated the difference between slashdot and Digg.
- ToadLeg, on 05/11/2008, -6/+12Maybe it's because it was told as a story and didn't really say anything about the bug. What systems does it effect, and are there any that it has already been fixed on (has it been imported to/fixed on Linux or other Unix derivatives)? What exactly do you have to do to reproduce the bug, and what happens?
- raynevandunem, on 05/11/2008, -1/+6The osnews article links to this: http://www.vnode.ch/fixing_seekdir
Does this explain what you asked about, or is this the one that you're referring to?
- raynevandunem, on 05/11/2008, -1/+6The osnews article links to this: http://www.vnode.ch/fixing_seekdir
- doctechnical, on 05/11/2008, -1/+43I am a geek :) so I appreciate the story for it's geek factor, but for non-geeks you should appreciate the bigger story - this bug was well known (well, it's presence was well known) but rather than go to the effort of finding out what was wrong, everyone just programmed around it. Sort of like having a leak in the roof and just walking around the wet spot rather than repair it. For 25 years! Which is several geological ages in computer time.
What that says about the human condition I leave to your interpretation.
- pervezalammzn, on 05/11/2008, -22/+6amazing :)
- meghalc, on 05/11/2008, -74/+22This is what happens when a company like Apple does not create their own operating system, and people say Windows have bugs!
- santaliqueur, on 05/11/2008, -15/+35Must everything be anti-Apple?
By the way, Windows is the king of bugs. Even the trolls know that.- Amiga500, on 05/11/2008, -15/+5Of course they are the king of bugs, they have the largest OS footprint known to man. Does stating the obvious, while trying to cover it up make you smart? Oops, no, you're still an ass.
- santaliqueur, on 05/11/2008, -3/+12Nice try on the twist. The funny thing is, for 1 user or 1 million, it still has more bugs. That number is user-independent.
- Amiga500, on 05/12/2008, -3/+1Incorrect, and your math is flawed, but thanks for playing.
P.S. You're still an ass. - santaliqueur, on 05/12/2008, -0/+2My MATH? What math? You mean there is more than 1 or 1 million users of each system? That's not math, it's an example. I'm an ass because I'm proving you wrong.
Just shut the ***** up please. - santaliqueur, on 05/12/2008, -1/+1Another thing, while reading your past comments, I've realized you're nothing but an anti-Linux troll. It wouldn't be so pathetic, but in your profile, you claim others to be "linux zealots", and liars. Give me a ***** break. Your dick is so far up Steve Ballmer's ass, you shouldn't even talk about Steve Jobs or Linux. Pathetic.
http://64.90.176.34/digg/stats/Amiga500/max_commen ...
- Amiga500, on 05/12/2008, -3/+1Incorrect, and your math is flawed, but thanks for playing.
- santaliqueur, on 05/11/2008, -3/+12Nice try on the twist. The funny thing is, for 1 user or 1 million, it still has more bugs. That number is user-independent.
- Amiga500, on 05/11/2008, -15/+5Of course they are the king of bugs, they have the largest OS footprint known to man. Does stating the obvious, while trying to cover it up make you smart? Oops, no, you're still an ass.
- PathDaemon, on 05/11/2008, -3/+20My sarcasm detector, it's not giving a clear reading!!
- OrangeSoda31, on 05/11/2008, -0/+3Don't tell me, your sarcasm detector is running on a bsd OS...
- jellygraph, on 05/11/2008, -8/+4Are you sure Apple didn't fix this in Darwin? ;)
Besides, all OS's have bugs, but many of the bugs in Windows are serious security flaws
- santaliqueur, on 05/11/2008, -15/+35Must everything be anti-Apple?
- MarkusGarvey, on 05/11/2008, -6/+18it was a virtual Moth...
- psa14colon1, on 05/11/2008, -16/+5Its bad enough that we have to read another lame article from os news... but even worse, one by Thom Holwerda. He's more of a crackpot "journalist" than Eugenia Loli-Queru was before him on the site.
- sephiroth965, on 05/11/2008, -16/+230Unix ≠ BSD
- houndeyex, on 05/11/2008, -8/+12That's what I was thinking too.
- rwald, on 05/11/2008, -14/+1BSD evolved from Unix, so a bug in Unix persisted until BSD.
- santaliqueur, on 05/11/2008, -6/+168Why dig out the character map to use ≠ when you could use != ? On a programming article, too.
- SSUK, on 05/11/2008, -13/+6¬ is even simpler...
- santaliqueur, on 05/11/2008, -1/+29If I don't have a "¬" key, it's not simpler.
- GreenAlien, on 05/11/2008, -0/+13It doesnt mean the same thing. "¬A" means "not A" and "A != B" means "A is not equal to B". In programming "¬A" would be the same as "!A".
- ArielMT, on 05/11/2008, -0/+1APL ftw.
- megagram, on 05/11/2008, -5/+30Maybe he was using a Mac? Option (alt) key plus = key yields ≠. No character map needed. Much cooler than != (unless, of course, you actually are a programmer).
- skywake, on 05/11/2008, -5/+42yes lets argue what way of saying not equals is cooler.....
- Kumaku, on 05/11/2008, -4/+2win.
- BradHAWK, on 05/12/2008, -0/+1Let's ≠.
- TechCF, on 05/11/2008, -1/+2Shift + Option + =
(Norwegian Layout) - irgeorge, on 05/11/2008, -4/+10using ≠ != really cooler than !=
- skywake, on 05/11/2008, -5/+42yes lets argue what way of saying not equals is cooler.....
- phatvolvo, on 05/11/2008, -2/+4you should thank him, because now whenever you borrow one you'll know where to go
- GiggleStick, on 05/11/2008, -4/+2Because type OperatingSystem doesn't support the != operator. Duhhhh... You'll need to extend it or something.
- SSUK, on 05/11/2008, -13/+6¬ is even simpler...
- wyrdness, on 05/11/2008, -6/+30You're really splitting hairs here. If 'Unix' is used in its generic sense, then BSD has *always* been Unix. If it's used in its precise trademarked sense, then some versions of BSD are also Unix.
BSD was always considered to be Unix when I first used it back in the 1980s.- trevorh, on 05/11/2008, -0/+4BSD and Linux are both Unix like systems but that does not mean that BSD=Linux there are differences
- alex4u2nv, on 05/11/2008, -1/+7However, BSD could be UNIX based on it's heritage, and based on whether or not its current distro adheres to the UNIX standards. See here: http://www.unix.org/.
OSX is certified UNIX. - frazw, on 05/11/2008, -0/+7Normally I wouldn't bother with this but in this case the implication is that anything derived from UNIX has the bug whereas it is only the BSD family that has it. At least that's what I understood from the article. Therefore it is more appropriate here to be more specific.
- doshindude, on 05/11/2008, -3/+8Unix != BSD?
amateur... - gurellia53, on 05/11/2008, -3/+15But this is digg. I'm surprised that this wasn't titled "The 25 Year Old Ubuntu Bug"
- xsquirrel378x, on 05/11/2008, -0/+7BSD = Unix
BSD != UNIX ®- int19h, on 05/12/2008, -0/+1So, there's both a specific UNIX ® (owned by Novell?) and a generic Unix (Linux+BSD+UNIX ®+Solaris+MacOSX++)?
- rockmanac, on 05/11/2008, -7/+78How was this allowed to exist for 25 years?
- sexybobo, on 05/11/2008, -5/+11Sounded like it had an easy work around that made it not cause any problems.
If it works don't fix it? - doctechnical, on 05/11/2008, -1/+90Because programmers would much rather write new code than go back and maintain old code.
- victorh86, on 05/11/2008, -2/+2so they can dazzle us...?
- alex4u2nv, on 05/11/2008, -0/+5BSD girl distracted the developers!!! ;p
- k0rd, on 05/11/2008, -6/+2Bad developers at Apple, duh.
- ray4389, on 05/12/2008, -0/+2How did apple not find this? They do after all make a crap load of money to fix ***** like this...
- grumpyrain, on 05/12/2008, -0/+3Some of us are developers, and most of us have been in situations where we have uncovered a bug in third party code.
Do you:
(a) File a detailed bug report, justify to some drone that you know what you are talking about, provide a concise test case to duplicate the issue just to convince them that a bug actually exists, and then wait for a period of time for the developers of those components to patch it or to roll your own patch.
- or -
(b) write 3 lines of code to work around the issue.
Don't get me wrong, when possible I try and create detailed bug reports of the nature I could only dream of my own customers providing me, but sometimes I have deadlines too.
- sexybobo, on 05/11/2008, -5/+11Sounded like it had an easy work around that made it not cause any problems.
- slvrbullet87, on 05/11/2008, -7/+11Wow they got on that pretty quick, maybe there is hope for the HP printers that give you the Error-Deleting problem
- archlich, on 05/11/2008, -1/+15PC Load Letter, the fsck does that mean?
- sexybobo, on 05/11/2008, -1/+2Load Letter sized paper in to the paper cartridge?
Paper Cartridge Load Letter
- sexybobo, on 05/11/2008, -1/+2Load Letter sized paper in to the paper cartridge?
- archlich, on 05/11/2008, -1/+15PC Load Letter, the fsck does that mean?
- trogdoor, on 05/11/2008, -2/+20I seem to be able to reproduce this bug on OpenBSD on UFS but not OpenBSD on ext2 or Tiger running on HFS+ ( the default file system for OSX )
- over900000, on 05/11/2008, -26/+12So much for open source fixing the bugs quickly.
- doctechnical, on 05/11/2008, -4/+17Because it was open source, someone was able to fix the bug, eventually. You have no such opportunity with closed source. There might be a hundred bugs older than this running around in the DOS code that's still in Windows. How would we ever know?
- Mechanicat, on 05/11/2008, -0/+2We encounter it?
- OrangeSoda31, on 05/11/2008, -0/+2what if we don't?
- Mechanicat, on 05/13/2008, -0/+1Then how will we ever know?
- OrangeSoda31, on 05/11/2008, -0/+2what if we don't?
- Mechanicat, on 05/11/2008, -0/+2We encounter it?
- doctechnical, on 05/11/2008, -4/+17Because it was open source, someone was able to fix the bug, eventually. You have no such opportunity with closed source. There might be a hundred bugs older than this running around in the DOS code that's still in Windows. How would we ever know?
- HappyScrappy, on 05/11/2008, -3/+104A friend of mine had to work around this issue over 10 years ago. It comes up when you try to delete all items in a directory. If you do "del *" (or the code equivalent) because that actually evaluates all items in the directory before deleting any of them (because of globbing in the shell case).
But if you try to do the straightforward case of iterating through all items in the directory, going to item 0, then deleting it, then going to item 1, then deleting it, you only end up deleting half the items in the directory. This is because finding item 1 returns item 2, since after deleting item 0, everything shifts down.
In the old method, where you opened the directory as a file and parsed the entries directly, you would hit all the items, since the file doesn't "shift down" as you delete entry 0. After deleting entry 0, there just no longer is no entry 0, but the next item is still item 1. If you make the straightforward code substitution of using readdir, etc. instead of reading directly, you create the delete every other file case above because of the new operation described.
I don't know how he made it work right, he told me so long ago I forgot what it was.
I'm not sure I agree with the "fix" above. It seems like more of a workaround for those who improperly translated their code to use readdir. The real fix would be to fix all those things that do what is described above to just repeatedly delete item 0 over and over instead of skipping forward. That's the proper way to delete all items (another way is to go in reverse order).- Protoss, on 05/11/2008, -1/+36Wow...I actually understood that explanation, thanks!
- HappyScrappy, on 05/11/2008, -1/+8Whoops, I kinda muffed that. In the first paragraph, I meant to say it doesn't come up in the "del *" case. Because you make a list of items and delete them by name. The case I describe below which uses the iterative case is the one where it can come up if you wrote your code wrong.
- rickcarson, on 05/11/2008, -5/+5Might have deleted from the other end instead (e.g. the tail not the head)
- joebaloney, on 05/11/2008, -1/+3Which is why the post you are replying to mentioned exactly that.
- balupton, on 05/11/2008, -3/+2Just to expand on HappyScrappy's comment, using a quote from the referenced article from the digg'd article. It only occurs in special cases:
"Creating the directory with 28 files had created a directory that spans more than one block on the disk (2 in this case). File 25 was the first entry of the second block. Obviously the problem occured when you delete the first entry in a block of a directory and then return to the recorded position of the second entry in the same block. This would actually get you one entry to far." - HappyScrappy, on 05/11/2008, -0/+4As a note, in addition to my corrections above, from another link:
http://www.vnode.ch/fixing_seekdir
It's apparent the issue is as I describe, but it doesn't always occur. That is, each time it happens, you skip over a file as I mentioned, but unlike how I described, it doesn't happen every time, so instead of skipping every other file, you skip very nth file, where n is 25 or something.
And this, apparently the idea of enumerating the items and deleting 0,1,2,3,4,5, etc. is okay according to the link once this bug is fixed. - mockupscaledown, on 05/11/2008, -0/+2Interesting read. Ran into a similar problem writing a thing for work on Friday that cleans up animation data on function curves. I couldn't figure out why it was deleting every other redundant key, but it all came down to not advancing the index if something gets deleted.
- headzoo, on 05/11/2008, -5/+23Any source code comment (or docs) that starts with "This code will not work as expected when" should probably be rewritten sooner rather than later. Specially not 25 years later.
- aladrin, on 05/11/2008, -2/+8In an ideal world, that's true. But then, it just should have been written to work 'as expected' in the first place... And probably would have been, if it could. (Probably.)
- grumpyrain, on 05/12/2008, -0/+3In the real world, there are times when you have a choice of implementing something quickly that meets your need or doing it properly. You may decide for example to create a specific class (for future code reuse) but to not implement corner cases you know you can not encounter.
This is why you use assertions. With encapsulation, you should not concern yourself with the inner workings of another class. It is a black box to you. As the author of a class, you are saying 'leave it to me'. A comment in the classes source code like "This code will not work as expected when ...." is next to useless for someone consuming your class. It breaks encapsulation by expecting an external class to know something about the state of your class.
Assertions allow you to formally declare within your class any assumptions you have made. If your class can not handle negatives for a particular property because you have not had the 'business need' to implement such cases, then assertions in your debug builds should cause either a compilation or runtime exception.
An assertion takes no longer to write than a comment.- eanbowman, on 05/12/2008, -0/+4Too bad object oriented languages weren't mature (invented?) back when this code was implemented, hunh?
In fact, it's things like these and the fact that the interfaces between bits of code tended to rely heavily on each others' inner workings that was the inspiration for all of that Object Oriented stuff you talk of in your post.
It's basically a sign of the times. The code was made and it worked as far as the authors knew. Probably almost immediately someone noticed a problem but there was already likely to be hundreds if not thousands of pieces of code written which relied on the incorrect behaviour. The dillemma then is, "do I fix it and risk breaking everything else or just let people work around it with the same kludges they've been using?"
It's a real problem with an ideal solution and a realistic solution as you can see.- buckrogers1965, on 05/13/2008, -0/+2Yeah, libraries like this really need some good automatic unit tests to give all the functions a good work out. As new bugs are found they can be added to the unit tests and the test demonstrate the bug, then the bug is fixed and the test library not only shows that the bug is fixed, but that no new bugs have been added to existing functionality.
- grumpyrain, on 05/14/2008, -0/+2OO was in theoryland in the 1960s, but commercial languages like Smalltalk were around since at least the early 80s. OO was certainly not the norm in programming.
My wording reflects OO because that is my background, but the principles are the same for non OO development. OO development just gives humans a nice framework for thinking through the problem, so code tends to be less like spaghetti and dependencies are easily traceable. (That is not to say poor OO code can not be written, I have seen and if I am honest need to admit to some terrible shortcuts that I have later regretted).
In procedural development, it is your functions that are making certain assumptions, so there is no reason why assumptions can not be documented using assertions. (Note, some languages may not have had built in constructs for assertions). Although the xUnit based frameworks were not available, custom written unit testing is possible in top-down development. If you need to worry about breaking dependencies, then your unit test coverage needs improvement.
I personally don't believe in writing comments in most cases. If your code needs comments, it should be rewritten in a less ambiguous ways. Methods like GetData are usually bad unless the nature of the class leaves no ambiguity as to the data that is being returned. Comments may be needed to describe the purpose of a method, but good code needs few comments. So to write what are effectively assertions as comments is wrong, doesn't save you any time and will cause future programmers more grief.- eanbowman, on 05/14/2008, -0/+1Good point - and I wasn't being critical so much as pointing out that the proper use of OOD could have saved us a lot of wasted time here. XD
- eanbowman, on 05/12/2008, -0/+4Too bad object oriented languages weren't mature (invented?) back when this code was implemented, hunh?
- tama00, on 05/11/2008, -27/+3this is lame
- FizzanoMatrix, on 05/11/2008, -3/+1Weren't most UNIX bugs pre-formatted in ADA anyways? It would seem unrealistic to loop the bug's life for anything over 8-9 months.
- jiqiren, on 05/11/2008, -1/+205Hey! What is this? Real tech news on digg?!?!?!
;)- daza, on 05/11/2008, -2/+51What is this, 2005 all over again!?
- jsebrech, on 05/11/2008, -0/+26It's just because all the non-geeks are not behind their screens. As soon as the weather worsens, we'll go back to videos of japanese people doing something weird and the latest "why obama will win" articles.
- Eddible, on 05/11/2008, -0/+17MADNESS!
- dudeguy1234, on 05/11/2008, -3/+1THIS... IS... SPARTAAAAA!
- OrangeSoda31, on 05/11/2008, -1/+2THIS... IS... DIGGGGG!
- rusty0101, on 05/11/2008, -0/+7Since the bug is over 18 years old, it's coming out party is news. The parents usually aim for 16...
- dudeguy1234, on 05/11/2008, -1/+2*25
- OrangeSoda31, on 05/11/2008, -1/+125>18
- dudeguy1234, on 05/11/2008, -1/+2*25
- daza, on 05/11/2008, -2/+51What is this, 2005 all over again!?
- computershack, on 05/11/2008, -29/+825 years to fix a bug and people bitch about Microsoft...
- zadadka, on 05/11/2008, -7/+32A rare bug in a stable operating system is far better than vast numbers of bugs in a rarely stable operating system.
- Amiga500, on 05/11/2008, -11/+7Rare bug is highly objective however, not to mention that the perception of "stable vs unstable" is greatly skewed by the fact one of the Operating Systems is in use on > 85% of all known machines.
Nice spin, but your reasoning is badly flawed because it ignores even the most basic statistics.- dudeguy1234, on 05/11/2008, -0/+7Operating system A is used by 5 people and has 10 bugs. Operating system B is used by 5,000 people and has 5 bugs. If Operating System A grows to 10,000 users, it will still have 10 bugs. If Operating system B sinks to 10 users, it will still have 5 bugs. Number of users != Number of bugs
- OrangeSoda31, on 05/11/2008, -3/+2Ah yes, but bugs don't make them self manifest until a user encounters them. The OS with more users is more likely to find more bugs. Since we can't count bugs that we are unaware of, the os with more users will tend to have more bugs.
- Amiga500, on 05/11/2008, -11/+7Rare bug is highly objective however, not to mention that the perception of "stable vs unstable" is greatly skewed by the fact one of the Operating Systems is in use on > 85% of all known machines.
- jellygraph, on 05/11/2008, -3/+4this is no comparison. Come back when the bug is as serious as Microsofts.
- zadadka, on 05/11/2008, -7/+32A rare bug in a stable operating system is far better than vast numbers of bugs in a rarely stable operating system.
- DeathJux, on 05/11/2008, -3/+8The spam-bots are out in full-force on this thread, for some reason... I wouldn't think it would generate much interest compared to the usual sensational stories that get the diggs.
- zeptobyte, on 05/11/2008, -0/+11This little bug's fix was *actually fairly trivial* (as is common with these sorts of long-standing bugs):
"The fix is surprisingly simple, *not to say trivial*: _readdir_unlocked() must not skip directory entries with inode set to zero when it is called from __seekdir()."
O.o - grimward, on 05/11/2008, -21/+8Interesting, so you can hide code within a huge block of code, and nobody finds out about it until after 25 years? That should speak volumes about how "safe" it is with open source. I'm not saying that closed source is any safer, just that open source isn't either.
- aladrin, on 05/11/2008, -2/+10So this was a security risk how?
- jellygraph, on 05/11/2008, -3/+8it also proves that grimward is an idiot, who should really stay away from computers. you aren't even worth the time of the day to explain why your thinking is wrong
- CSharpSauce, on 05/11/2008, -3/+7This isn't hidden code.... this is a small trivial bug that programmers didn't notice. A back door in a system would be FAR more noticeable. My guess is you don't understand much about maintaining code.
- cypherz, on 05/11/2008, -0/+3The presence of this bug doesn't say anything at all about whether open source is safe or not. All non-trivial code has bugs.
- grimward, on 05/12/2008, -1/+1Wow, guess I struck a nerve eh? Well, the point is, if this bug was undetected for so many years, whose to say that one's malicious microcode project can't be undetected too? Obfuscation flossboys, google it!
- kennu, on 05/11/2008, -5/+18Silly to put UNIX in the submission title, when even the original title clearly stated it was a *BSD* bug.
- capecodcarl, on 05/11/2008, -5/+5BSD is UNIX, just the branch developed by the smelly hippies in California instead of the clean-cut Bell Labs folks.
/yes, I know BSD is not UNIX(tm), but it is UNIX-like as much as Linux is UNIX-like.- FKnight, on 05/11/2008, -3/+12Linux: UNIX for Teens.
- MattBD, on 05/11/2008, -2/+5If Linux is UNIX for teens, what are other UNIX-like OS's? How about:
OS X: UNIX for unfertilized ova (I thought toddlers or babies, or even embryos, but they're not really strong enough for how simplified it is)
OpenBSD: UNIX for the paranoid
Any other suggestions? - tian2992, on 05/11/2008, -0/+4GNU/Hurd
For the Hippie in you! - OrangeSoda31, on 05/11/2008, -1/+2Ubuntu: UNIX for the noob
- MattBD, on 05/11/2008, -2/+5If Linux is UNIX for teens, what are other UNIX-like OS's? How about:
- FKnight, on 05/11/2008, -3/+12Linux: UNIX for Teens.
- capecodcarl, on 05/11/2008, -5/+5BSD is UNIX, just the branch developed by the smelly hippies in California instead of the clean-cut Bell Labs folks.
- CSharpSauce, on 05/11/2008, -2/+6Does anyone here have the code? I'm far more interested in that then this... non-programmers interpretations of it.
- Amazetbm, on 05/11/2008, -0/+2Just down load an earlier version of OpenBSD, FreeBSD or NetBSD.
- dudeguy1234, on 05/11/2008, -0/+2*programmer's
- trixterIreland, on 05/11/2008, -0/+8yeah as many have commented it seems the original posted doesnt know the difference between unix and bsd, which is a fork of unix that happened long long ago. Regardless of this, they werent the only one that had the same fundamental problem of skipping things, coherent (pc based unix available in the 80s) had a similar problem with ksh where it would skip over entries.
I wonder if this affects the unix subsystem microsoft has which is based in part on BSD code. Microsoft basically bought up the company that made it and made it free instead of you having to pay for it. They then bundled in some extra stuff like the ability to print to BSD printers (lpr) and the ability to mount NFS drives. Unfortunately they kinda stopped doing work on this at about that time as well. Interix is different from and in some ways better than cygwin since its not a sandbox. But anyway, it may have the same issues and due to its relative obscurity (most people dont know about all the free addons that MS has) its probably overlooked in things like this. - kamisama, on 05/11/2008, -0/+19It's not a bug, it's a feature.
- WolverineBlue, on 05/11/2008, -2/+5Only for the OS X version.
- picpak, on 05/11/2008, -1/+22Anyone else read Ballmer instead of Balmer?
- ferggo, on 05/11/2008, -0/+8"Code wants to be wrong" -Steve Gibson
- Skooma714, on 05/11/2008, -3/+13lol BSD is buggy switch to Windows.
- Amazetbm, on 05/11/2008, -4/+6Dugg for twisted humor.
- OrangeSoda31, on 05/11/2008, -0/+1Dugg for explaining why you dugg
- Amazetbm, on 05/11/2008, -4/+6Dugg for twisted humor.
- Jookly, on 05/11/2008, -1/+2lol @ the add for becoming a border control agent I just saw.
- Corrosionx, on 05/11/2008, -11/+5Here's a video of the bug in action on my old 286:
http://youtube.com/watch?v=oHg5SJYRHA0- Echomote, on 05/11/2008, -0/+1the "RHA0" one is dead obvious.
- OrangeSoda31, on 05/11/2008, -0/+1Very informative.
- allah6464, on 05/11/2008, -0/+8I love how the submitter copy-and-pasted the title and first sentence from the article... then replaced both instances of "BSD" with "UNIX".
- biggdeedubb, on 05/11/2008, -0/+0This just goes to show that there is now such thing as "bug free"/"perfect" code.
I know that many of us know that, but I am still amazed that end users expect and cannot figure out why there would be any bugs in any type of software. I run into these type of people all the time. - mswope, on 05/11/2008, -0/+2Well, you know, priorities, priorities...
- akirakurosawa, on 05/11/2008, -3/+1BSD is still >>>>>> Linux
- killdeer03, on 05/11/2008, -0/+1How is that?
- lucasmaximus, 51 minutes ago, -0/+0Read here http://www.over-yonder.net/~fullermd/rants/bsd4lin ...
- killdeer03, on 05/11/2008, -0/+1How is that?
- askthequestion, on 05/11/2008, -0/+1bug?!
got
code? - mrnick1234567, on 05/11/2008, -1/+4Great, now we can spend time sorting out that other slightly more worrying bug... the one where Unix clocks stop counting at 19 Jan 2038 at 3:14:07 AM GMT. (http://www.gsp.com/2038/)
- OrangeSoda31, on 05/11/2008, -0/+2That is troubling indeed... except that by then everyone will have 64 bit CPUs...
- eanbowman, on 05/11/2008, -0/+6Okay, so the act of working around this bug is called a kludge.
Kludges have always existed - mostly because someone else owns the code and you'd rather not muck with it lest other versions of the code make your code unusable. Even if you fixed this bug and released the source - that could mean that millions of other programs need to be changed because they rely on the incorrect behaviour instead of the correct behaviour.
For the Apple detractors - Apple isn't responsible for BSDs and as another member noted - he was unable to reproduce the bug in Darwin. You're being r-tards ;D (FTL?)
Have you ever programmed for the Windows API? Kludge is the name of the game. So is inconsistency, bloat and sheer madness. Probably the main reason for bugs in Windows is that when developers expect a piece of code to work in a certain way - there's next to no guarantee that it will. :P
That and not cleaning up the garbage... d'oh! :3- mcturdTheThird, on 05/12/2008, -0/+2Do you mean a specific Windows based API or just programming in general for a windows environment using C++, VB or C# or something like that? I've only been programming for a few years and don't have much experience with any thing pre .NET (except maybe ASP Classic, VBScript Etc.). Maybe that's the reason I haven't had the same experience as you. I don't know. For me, everything thus far has been straight forward and worked as expected.
- eanbowman, on 05/14/2008, -0/+1To be fair - .NET is beginning to curb things with a more reasonable API ;D
Yes, I'm speaking in terms of "legacy" code.
There's a growing consensus even amongst softies that MS should dump a lot of the legacy API and start fresh but that'd be a terrible task to undertake, might not even be possible and it would surely be expensive.
Getting everyone on the .NET bandwagon and hoping everyone forgets about legacy programs might be a good strategy. LOL
Windows v20 - only .NET or newer code?
Then agian the biggest advantage Windows has going for it is the installed base and backward compatibility with a huge library of software. :P
- eanbowman, on 05/14/2008, -0/+1To be fair - .NET is beginning to curb things with a more reasonable API ;D
- mcturdTheThird, on 05/12/2008, -0/+2Do you mean a specific Windows based API or just programming in general for a windows environment using C++, VB or C# or something like that? I've only been programming for a few years and don't have much experience with any thing pre .NET (except maybe ASP Classic, VBScript Etc.). Maybe that's the reason I haven't had the same experience as you. I don't know. For me, everything thus far has been straight forward and worked as expected.
- SleighBoy, on 05/11/2008, -0/+3Celebrate an OpenBSD developer making the fix by buying an OpenBSD CD Set or making a donation today! :)
- fuzzybeard, on 05/11/2008, -0/+1Shouldn't Pioneer 10 come into contact with whatever turns it into V'ger sometime soon?
/jk - netneutrality, on 05/12/2008, -0/+225 long years that poor little bug sat there in the C code all alone, hoping someone, somewhere, one day, would notice it. I'm glad somebody found it. It makes me all warm and fuzzy inside for some reason. :D
- amigiac, on 05/12/2008, -0/+2Double whammy the guy's name was Balmer!
