From: Elizabeth Figura zfigura@codeweavers.com
--- dlls/win32u/dibdrv/graphics.c | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/dlls/win32u/dibdrv/graphics.c b/dlls/win32u/dibdrv/graphics.c index 5f715209362..fb92f137b9b 100644 --- a/dlls/win32u/dibdrv/graphics.c +++ b/dlls/win32u/dibdrv/graphics.c @@ -1601,6 +1601,10 @@ BOOL dibdrv_RoundRect( PHYSDEV dev, INT left, INT top, INT right, INT bottom, /* We are drawing four arcs, but the number of points we will actually use * is exactly as many as in one ellipse arc. */ max_points = get_arc_max_points( dc, &arc_rect ); + /* We may generate the "same" center point of the ellipse twice, once on + * each side of each straight line. Add one point per side to account + * for this. */ + max_points += 4; points = malloc( max_points * sizeof(*points) ); top_points = malloc( max_points * sizeof(*points) ); if (!points || !top_points)