Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I couldn't agree more with this.

I may be overdoing it a bit here, but personally I don't agree with Torvald's p.o.v. at all. While user experience is obviously important, allowing mistakes like this to go unchallenged by simply providing a work-around just encourages people to write broken software. Specs exist for a reason. Ignoring them is not it.

I do this in my own software as well. If a user files a bug because input X fails to process as expected -- and it turns out his/her input does not meet the spec -- I do not supply a fix. Even if his/her supplied input is widely used in 'the wild'. While this alienates a considerable user base, I refuse to be part of the problem.



Myself I would go for a compromise. Flash's behaviour (using memcpy when then mean memmove) is definitely faulty, and it's not an obscure C undefined behavior either, I'm sure any C tutorial worth mentioning has "if you want to copy overlapping regions of memory, use memmove" somewhere in the middle. I'd just fill a bug on adobe's bugtracker, tell them "we'll keep the current for X months, but then we'll switch to a new implementation, so if it still breaks it's up to you". With X being a reasonable enough lapse of time.

By the way, if flash was open source it would probably be a one line patch to fix the issue, but it's not, and I wouldn't blame the fedora/glibc devs for that. Breaking things because "you can" is no good policy, but it doesn't mean you have to be backward compatible for ever, that's what being realistic is about.


I can see the moral hazard side of things; but Linus does have a point.

There has to be great benefit from changing the implementation of memcpy for it to be worth it. And broken flash is an obvious negative. And across the said thread, there is argument that the new implementation might not be the best as well. So, with two negatives and no obvious positives why do it at all?


If early web browsers has stuck to the spec and rejected all "bad" inputs, then web probably would have been a better place today. Sometimes the user's interests are in the future not in the now.


Or maybe it would be as popular as gopher, and we'd all still be ftp'ing shit around.


um, good luck with that.


Do you at least attempt to show the customer the error of their ways?


Of course. If the supplier of their input is a third party, I will even go so far as to file the appropriate bug reports with said third party for them.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: