[commit] r1884 - trunk/GME/ConstraintManager
GMESRC Repository Notifications
gme-commit at list.isis.vanderbilt.edu
Tue Apr 17 16:34:09 CDT 2012
Author: ksmyth
Date: Tue Apr 17 16:34:09 2012
New Revision: 1884
Log:
Return S_FALSE if some constraint violations were found
Modified:
trunk/GME/ConstraintManager/ExpressionChecker.cpp
Modified: trunk/GME/ConstraintManager/ExpressionChecker.cpp
==============================================================================
--- trunk/GME/ConstraintManager/ExpressionChecker.cpp Fri Mar 23 16:41:46 2012 (r1883)
+++ trunk/GME/ConstraintManager/ExpressionChecker.cpp Tue Apr 17 16:34:09 2012 (r1884)
@@ -33,6 +33,7 @@
STDMETHODIMP CExpressionChecker::ObjectsInvokeEx( IMgaProject *p, IMgaObject *o, IMgaObjects* os, long k )
{
+ HRESULT ret = E_ABORT;
AFX_MANAGE_STATE( AfxGetStaticModuleState());//z
if ( ! m_Facade.m_bEnabled )
return S_OK;
@@ -57,15 +58,18 @@
for ( unsigned int i = 0 ; i < vecConstraints.size() ; i++ )
dlgErrors.AddItem( vecConstraints[ i ] );
dlgErrors.DoModal();
+ ret = S_FALSE;
}
else
+ {
CSmallMessageBox().DoModal();
+ ret = S_OK;
+ }
m_Facade.Finalize();
+ return ret;
} COMCATCH( ASSERT( 0 ); )
-
- return S_OK;
}
STDMETHODIMP CExpressionChecker::GlobalEvent( globalevent_enum event )
@@ -160,8 +164,6 @@
ASSERT(false); // Shouldn't get other events because of put_EventMask
} COMCATCH( ASSERT( 0 ); )
-
- return S_OK;
}
STDMETHODIMP CExpressionChecker::Initialize( IMgaProject *p )
@@ -272,8 +274,10 @@
CComPtr<IMgaTerritory> t;
COMTHROW(p->get_ActiveTerritory(&t));
COMTHROW(p->AbortTransaction());
- COMTHROW(ObjectsInvokeEx(p, o, NULL, k));
+ HRESULT ret = ObjectsInvokeEx(p, o, NULL, k);
+ COMTHROW(ret);
COMTHROW(p->BeginTransaction(t, TRANSACTION_GENERAL));
+ return ret;
} COMCATCH(;)
}
More information about the gme-commit
mailing list