VC6.0 调试时老是出现 User breakpoint called from code at 0x7c92120

VC6.0 调试时总是出现 User breakpoint called from code at 0x7c92120
在写一个画图程序,编译没有错,运行时报错User breakpoint called from code at 0x7c92120
调试输出为second chance assertion failed:file wingdi.cpp,line 1120;
下面是部分有问题代码:
首先我在定时器处理函数中实现两个变量的自增
(((CLJJCApp*)AfxGetApp())->m_CurrentRow)++;
(((CLJJCApp*)AfxGetApp())->m_nRow)++;
if((((CLJJCApp*)AfxGetApp())->m_nRow)>1000)
KillTimer(2);
下面是绘图函数
void CMyView::OnPaint() 
{
CPaintDC dc(this); // device context for painting
dc.SetWindowOrg(m_nHScrollPos, m_nVScrollPos);
static int m_WrongRow[1000];//用来保存m_nRow的
static int i=0;
if(i<1000)
{ m_WrongRow[i]=(((CLJJCApp*)AfxGetApp())->m_nRow);
i++;
}


 for(int j=2;j<m_TotalRows;j++) //根据j的值,与m_CurrentRow,m_nRow间的关系画出
   { //整个循环回路                            不同颜色
 int COLOR=0;
CPen* pOldPen=NULL;
CPen pen;
   
 if(j==((CLJJCApp*)AfxGetApp())->m_CurrentRow)
 
 {   
COLOR=3;
pen.CreatePen(PS_SOLID,1,RGB(255,0,0));
CPen* pOldPen=dc.SelectObject(&pen);
 }
else if(j>((CLJJCApp*)AfxGetApp())->m_CurrentRow)
{COLOR=4;
pen.CreatePen(PS_SOLID,1,RGB(255,255,255));
CPen* pOldPen=dc.SelectObject(&pen);
}
else if(j<((CLJJCApp*)AfxGetApp())->m_CurrentRow)

{   
for(int  a=2;a<i;a++)//出错的地方
      if(j==m_WrongRow[a])
/*上面两行是出错的地方我想将当前的j和数组中保存的逐一比较只要和数组中的相同就画出红色,可是当我
用上面的循环时就会报错,如果我不用循环而是直接取出数组中的值例如将上面两句改为
if(j==m_WrongRow[9]||j==m_WrongRow[23])则会在9,和23行出画出红色图形*/
{
        COLOR=2;
            pen.CreatePen(PS_SOLID,1,RGB(255,0,0));
        CPen* pOldPen=dc.SelectObject(&pen);
}
   else
   {
   COLOR=1;
       pen.CreatePen(PS_SOLID,1,RGB(0,255,0));
   CPen* pOldPen=dc.SelectObject(&pen);
   }
  
}....
绘图函数}

各位大神帮忙看一眼吧,谢谢了

------解决方案--------------------
file wingdi.cpp,line 1120;
打开 wingdi.cpp,找 1120;
BOOL CGdiObject::Attach(HGDIOBJ hObject)
{
ASSERT(m_hObject == NULL); 
//
其实 可以 在 for 里 单步 执行,看 那句 出问题了。