I totally agree with this. If we reimplement the Win32 API, we have to replicate the exact behaviour that code expects -- not make up our own 'perfected Win32' clone. We don't define the Win32 API, we reimplement it. If our primary goal is application compatibility, then correctness _IS_ compatibility. You think that sucks? You want to improve the API? Hey, go implement some similar but 'perfected' API then -- but don't call it Win32. Win32 has never been like that.
From: aleksey@reactos.org Date: Sun, 7 Dec 2008 23:17:23 +0300 To: ros-dev@reactos.org Subject: Re: [ros-dev] compatibility vs. correctness
In fact, this is what Wine's regression tests are for too. They test not only correct, but also incorrect and tricky situations, where behavior is undocumented.
Certainly, I strictly disagree with offers like "let's enhance ReactOS API and add a few ROS-specific functions", "let's hack XXX WinAPI to do better parameters check", and similar things. Especially if there is a real-life testcase (like app you mentioned).
This all comes from the idea, that Microsoft(R) itself is not a stupid company, and if it is an indeed serious fault, it's fixed in a recent version of their operating system, thus enabling us to fix it also. If it's not, then we have to mimic it, otherwise forget about compatibility.
WBR, Aleksey.
On Dec 7, 2008, at 9:07 PM, Ged wrote:
Zachary Gorden wrote:
Just because Windows was tolerant of this specific sloppiness doesn't mean
we should be.
I completely disagree. We need to replicate the Windows API as closely as possible, warts and all. This is what compatibility is all about
Ged.
Ros-dev mailing list Ros-dev@reactos.org http://www.reactos.org/mailman/listinfo/ros-dev
_________________________________________________________________ News, entertainment and everything you care about at Live.com. Get it now! http://www.live.com/getstarted.aspx