nsIWidget *nsWidget::GetParent(void) { nsIWidget *theParent = nsnull;  if( mParent ) {   if ( ! (((nsWidget *)mParent)->mIsDestroying)) { NS_ADDREF( mParent ); theParent = mParent; } else { PR_LOG(PhWidLog, PR_LOG_DEBUG, ("nsWidget::GetParent - mParent is being destroyed so return NULL!\n")); } } else { PR_LOG(PhWidLog, PR_LOG_DEBUG, ("nsWidget::GetParent - mParent is NULL!\n" )); }  return theParent; }
inline nsIWidget* GetParent(void) { nsIWidget* result = mParent; if( mParent ) NS_ADDREF( result ); return result; }
nsIWidget *nsWidget::GetParent(void){  nsIWidget *theParent = nsnull;    if( mParent )  {	/* I know this is really a nsWidget so I am type casting to */	/* improve preformance since this function is used a lot. (kirkj) */    if ( ! (((nsWidget *)mParent)->mIsDestroying))	{	  NS_ADDREF( mParent );	  theParent = mParent;    }    else	{      PR_LOG(PhWidLog, PR_LOG_DEBUG, ("nsWidget::GetParent - mParent is being destroyed so return NULL!\n"));	}  }  else  {    PR_LOG(PhWidLog, PR_LOG_DEBUG, ("nsWidget::GetParent - mParent is NULL!\n" ));  }    return theParent;}