在wingdi.cpp发现这样一段代码,怀疑是bug!该怎么解决

在wingdi.cpp发现这样一段代码,怀疑是bug!

BOOL   CGdiObject::Attach(HGDIOBJ   hObject)
{
ASSERT(m_hObject   ==   NULL);             //   only   attach   once,   detach   on   destroy
if   (hObject   ==   NULL)
return   FALSE;
CHandleMap*   pMap   =   afxMapHGDIOBJ(TRUE);   //   create   map   if   not   exist
ASSERT(pMap   !=   NULL);
pMap-> SetPermanent(m_hObject   =   hObject,   this);
return   TRUE;
}


主要是这2句:
ASSERT(m_hObject   ==   NULL);             //   only   attach   once,   detach   on   destroy
if   (hObject   ==   NULL)
return   FALSE;

大家说这是不是bug,我用的是vs2003.

------解决方案--------------------
什么意思?怎么是bug了?很正常啊,如果已经Attach过了,就报错。