现在的位置: 首页 > 综合 > 正文

一个GDIPlus的Bug — OutofMemory异常

2012年12月20日 ⁄ 综合 ⁄ 共 475字 ⁄ 字号 评论关闭

 

今天发现 framework2.0中的一个GDIPlus的Bug:

在Form的OnPaint事件里面写如下代码: 

        private void Form1_Paint(object sender, PaintEventArgs e)
        {
            Pen p = new Pen(Color.Red);
            p.Width = 1;
            p.DashStyle = DashStyle.Dot;
            p.DashOffset = 1;
            e.Graphics.DrawLine(p, new Point(58, 8), new Point(58, 9));
            p.Dispose();
        }

系统会扔出outofmemory的异常,来自于Native的GDI Plus的代码。 

总结一下,条件是:

1. 线型为Dot

2.线宽为1

3.DashOffset为1

4.仅仅画一个像素

======================

MS的处理结果,他们确认这个是一个Bug,但是不准备修复

抱歉!评论已关闭.