BUG: MoveTo/LineTo Causes Divide by 0 Error (111007)



The information in this article applies to:

  • Microsoft Windows Software Development Kit (SDK) 3.1

This article was previously published under Q111007
3.10 WINDOWS kbprg kbbuglist

SYMPTOMS

Using MoveTo() or LineTo() with a delta X or delta Y greater than 16K to draw within a complex clipping region, causes the system to display the following error message in a system modal dialog box appears:
Application Error integer divide by 0

CAUSE

If the change in x or the change in y in the MoveTo/LineTo calls is greater than 16K, and if the line is being drawn to a complex clipping region, a divide overflow error occurs in GDI.exe. This problem does not occur for smaller changes in x or y, and it also does not occur if the line is being drawn to a noncomplex clipping region.

RESOLUTION

This bug can be worked around by avoiding complex clipping regions, or if complex regions are critical, by ensuring that the changes in x and y in MoveTo/LineTo calls are always less than 16K.

STATUS

Microsoft has confirmed this to be a bug in Windows version 3.1.

Modification Type:MajorLast Reviewed:6/19/1999
Keywords:kbbug KB111007