gdi32: Fix skipping of zero-length dashes.

This commit is contained in:
Alexandre Julliard 2012-01-04 14:57:52 +01:00
parent fd8597b2bf
commit 618425ac4c
1 changed files with 2 additions and 1 deletions

View File

@ -779,7 +779,7 @@ void reset_dash_origin(dibdrv_physdev *pdev)
static inline void skip_dash(dibdrv_physdev *pdev, unsigned int skip)
{
skip %= pdev->pen_pattern.total_len;
while(skip)
do
{
if(pdev->dash_pos.left_in_dash > skip)
{
@ -792,6 +792,7 @@ static inline void skip_dash(dibdrv_physdev *pdev, unsigned int skip)
pdev->dash_pos.left_in_dash = pdev->pen_pattern.dashes[pdev->dash_pos.cur_dash];
pdev->dash_pos.mark = !pdev->dash_pos.mark;
}
while (skip);
}
static void dashed_pen_line_callback(dibdrv_physdev *pdev, INT x, INT y)