Bug compatible?

Troy Rollo wine at troy.rollo.name
Sun Feb 8 16:00:45 CST 2004

On Sat, 7 Feb 2004 00:51, Fabian Cenedese wrote:
> GetTextExtentPointA/W:
> TRACE("not bug compatible.");
> As funny as it is it doesn't say that much. Is this referring to a bug
> in Windows?

Actually, it does say much.

Bug compatibility is defined in TNHD (or the jargon file as it's often named 
these days). This means there's a bug in some versions of Windows that has 
not been translated to Wine. My guess is that the bug referred to here is one 
that causes GetTextExtent* to sometimes return a width of zero for non-empty 
strings. The bug has no practical uses, and although plenty of apps no doubt 
work around it, the work-around is to detect if the width component is zero, 
and then futz around with the string to try to figure out what the return 
value really should have been. It is extremely unlikely that the lack of 
compatibility with this bug would break any Windows app, particularly since 
the bug is not present in all versions of Windows.

In fact, there would appear to be no sensible way for an app to rely on the 
presence of a bug in these API calls. In other cases, however, an app might 
rely on the buggy behaviour of a particular API call, and then bug 
compatibility can be important.

It seems to me that all this is saying is "this isn't bug compatible, but it 
wasn't thought that it would be useful to emulate Microsoft bugs here".

More information about the wine-devel mailing list