void CGwsObject::PushFdoException ( const CGwsStatus & stat, FdoException * fdoEx ) const { FdoException * e = fdoEx; e->AddRef (); // do I need to reverse fdo exception chain? while (e != NULL) { PushStatus (CGwsStatus (eGwsFdoProviderError, e->GetExceptionMessage ())); FdoException * e1 = e->GetCause (); e->Release (); e = e1; } PushStatus (stat); }