BUG: Occasional Gap Between Adjacent Pie() Wedges (111584)



The information in this article applies to:

  • Microsoft Windows Software Development Kit (SDK) 3.1
  • Microsoft Windows Software Development Kit (SDK) 3.0

This article was previously published under Q111584

SYMPTOMS

If the Pie() function is used to draw two pie wedges with the same bounding rectangle and the end point of the first wedge is equal to the start point of the second wedge, there can be a gap between adjacent wedges. This gap only occurs occasionally, and with certain pie sizes and start-and-end points.

STATUS

Microsoft has confirmed this to be a bug in Windows versions 3.0 and 3.1. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.

MORE INFORMATION

This behavior can be reproduced using the following code fragment on a VGA display:

Sample Code

#define     xLeft     (25)
#define     yTop     (25)
#define     xRight     (450)
#define     yBottom     (450)
#define     xMiddle     ((xLeft + xRight) / 2)
#define     yMiddle     ((yTop + yBottom) / 2)
{
HBRUSH hbrushRed, hbrushBlue, hbrushOld;

hbrushRed = CreateSolidBrush(RGB(255, 0, 0));
hbrushBlue = CreateSolidBrush(RGB(0, 0, 255));

hbrushOld = SelectObject(hdc, hbrushRed);
Pie(hdc, xLeft, yTop, xRight, yBottom, xRight, yMiddle, xRight, yTop);
SelectObject(hdc, hbrushBlue);
Pie(hdc, xLeft, yTop, xRight, yBottom, xRight, yTop, xMiddle, yTop);

SelectObject(hdc, hbrushOld);
DeleteObject(hbrushRed);
DeleteObject(hbrushBlue);
}
				

Modification Type:MajorLast Reviewed:4/6/2004
Keywords:KB111584