if (mDocument && mObserverService) { pDocument = do_QueryInterface( mDocument, &observerResult ); if (NS_SUCCEEDED( observerResult )) {
result = mPresContext->GetContainer( getter_AddRefs( pContainer ) );  if (NS_SUCCEEDED( result ) && pContainer) { pDocShell = do_QueryInterface( pContainer, &result );  if (NS_SUCCEEDED( result ) && pDocShell && mObserverService) {
PresShell::NotifyReflowObservers(const char *aData){  if (!aData) { return NS_ERROR_NULL_POINTER; }  nsresult               observerResult = NS_OK;  nsCOMPtr<nsISupports>  pDocument;  nsAutoString           sTopic,                         sData;  if (mDocument && mObserverService) {    pDocument = do_QueryInterface( mDocument,                                  &observerResult );    if (NS_SUCCEEDED( observerResult )) {      sTopic.AssignWithConversion( NS_PRESSHELL_REFLOW_TOPIC );      sData.AssignWithConversion( aData );      observerResult = mObserverService->Notify( pDocument,                                                 sTopic.GetUnicode( ),                                                 sData.GetUnicode( ) );      // notice that we don't really care what the observer service returns    }  }  return NS_OK;}