Multi-processor difference between Windows versions

Juan Lang juan.lang at
Thu Feb 18 17:22:38 CST 2010

Hi Erich,

On Thu, Feb 18, 2010 at 3:15 PM, Erich Hoover <ehoover at> wrote:
> In exploring a bug in a game we* ran across an interesting difference
> between how Windows versions handle a multiple-processor request.  In
> essence, this supposedly invalid request will succeed on newer Windows
> versions **:
> SetThreadAffinityMask(curthread,(-1));
> So, the question I have is whether Wine should support this behavior
> as a matter of course or if it should only support this request when
> the emulated version is set to Vista or greater.  It seems to me like
> this should be supported as a matter of course, since anyone who uses
> this "feature" is unlikely to have properly tested it on multiple
> versions of Windows.  However, I'm unfamiliar with the policy on these
> version-difference matters and figured I should ask before putting
> something together.

You're right, we should do this as a matter of course.  Usually the
newer behavior is the saner behavior, so it's what we want to emulate.
 Please add a test case showing that
SetThreadAffinityMask(curthread,(-1)) succeeds, and mark it as
broken() if it doesn't.

More information about the wine-devel mailing list