[GME-commit] GMESRC/GME/XmlBackEnd CoreXmlFile.cpp, 1.37, 1.38 SvnBench.cpp, 1.2, 1.3 SvnBench.h, 1.2, 1.3 SvnExec.cpp, 1.4, 1.5 SvnExec.h, 1.2, 1.3 SvnHelper.cpp, 1.2, 1.3 SvnHelper.h, 1.2, 1.3 SvnLoginDlg.cpp, 1.2, 1.3 SvnTester.cpp, 1.5, 1.6 SvnTester.h, 1.3, 1.4 XmlBackEnd.rc, 1.9, 1.10 resource.h, 1.8, 1.9 svauto.idl, 1.3, 1.4

Log messages of CVS commits gme-commit at list.isis.vanderbilt.edu
Tue May 20 15:24:11 CDT 2008


Update of /project/gme-repository/GMESRC/GME/XmlBackEnd
In directory escher:/tmp/cvs-serv32605

Modified Files:
	CoreXmlFile.cpp SvnBench.cpp SvnBench.h SvnExec.cpp SvnExec.h 
	SvnHelper.cpp SvnHelper.h SvnLoginDlg.cpp SvnTester.cpp 
	SvnTester.h XmlBackEnd.rc resource.h svauto.idl 
Log Message:
Fixing SVN uptodate question.


CVS User: Zoltan Molnar, ISIS (zolmol)

Index: XmlBackEnd.rc
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/XmlBackEnd/XmlBackEnd.rc,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** XmlBackEnd.rc	18 Apr 2008 16:31:51 -0000	1.9
--- XmlBackEnd.rc	20 May 2008 20:24:08 -0000	1.10
***************
*** 211,214 ****
--- 211,216 ----
      PUSHBUTTON      "&Update",IDC_UPDATE_BUTTON,178,83,50,14
      PUSHBUTTON      "&Test Setup",IDC_TESTCONN_BUTTON,13,104,50,14
+     PUSHBUTTON      "&Lock",IDC_LOCK_BUTTON,68,104,50,14
+     PUSHBUTTON      "&Unlock",IDC_UNLOCK_BUTTON,123,104,50,14
  END
  

Index: SvnLoginDlg.cpp
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/XmlBackEnd/SvnLoginDlg.cpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** SvnLoginDlg.cpp	15 Feb 2008 21:06:43 -0000	1.2
--- SvnLoginDlg.cpp	20 May 2008 20:24:08 -0000	1.3
***************
*** 87,91 ****
  	if( ppk) ppk->EnableWindow( !m_sshDisabled); // enable also if no url to decide upon
  
! 	m_passwordCtrl.EnableWindow( FALSE);//either 0 or 2, m_radBtnLoginMethod.GetCheck() != BST_CHECKED);
  	m_btnLoadFromCache.EnableWindow( m_credRadioBtn == 0);
  
--- 87,91 ----
  	if( ppk) ppk->EnableWindow( !m_sshDisabled); // enable also if no url to decide upon
  
! 	m_passwordCtrl.EnableWindow( m_credRadioBtn == 1);//either 0 or 2, m_radBtnLoginMethod.GetCheck() != BST_CHECKED);
  	m_btnLoadFromCache.EnableWindow( m_credRadioBtn == 0);
  

Index: svauto.idl
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/XmlBackEnd/svauto.idl,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** svauto.idl	18 Apr 2008 16:31:51 -0000	1.3
--- svauto.idl	20 May 2008 20:24:08 -0000	1.4
***************
*** 30,33 ****
--- 30,34 ----
  	[id(16), helpstring("method Logging")] HRESULT Logging(VARIANT_BOOL onoff, BSTR logfile);
  	[id(17), helpstring("method ReplaceUserName")] HRESULT ReplaceUserName(BSTR userName);
+ 	[id(18), helpstring("method IsUpToDate")] HRESULT IsUpToDate( BSTR path, [out, retval] VARIANT_BOOL* upToDate);
  };
  
***************
*** 44,48 ****
  interface ISvnTester : IDispatch {
  	[id(1), helpstring("method info")]    HRESULT info    ([in] BSTR url,  [in] VARIANT_BOOL byAPI, [in] VARIANT_BOOL recursive, [out,retval] BSTR* resultMsg);
! 	[id(2), helpstring("method status")]  HRESULT status  ([in] BSTR path, [in] VARIANT_BOOL byAPI, [out,retval] BSTR* resultMsg);
  	[id(3), helpstring("method cleanup")] HRESULT cleanup ([in] BSTR path, [in] VARIANT_BOOL byAPI, [out,retval] BSTR* resultMsg);
  	[id(4), helpstring("method resolve")] HRESULT resolve ([in] BSTR path, [in] VARIANT_BOOL byAPI, [in] VARIANT_BOOL recursive);
--- 45,49 ----
  interface ISvnTester : IDispatch {
  	[id(1), helpstring("method info")]    HRESULT info    ([in] BSTR url,  [in] VARIANT_BOOL byAPI, [in] VARIANT_BOOL recursive, [out,retval] BSTR* resultMsg);
! 	[id(2), helpstring("method status")]  HRESULT status  ([in] BSTR path, [in] VARIANT_BOOL byAPI, [in] VARIANT_BOOL onserver, [out,retval] BSTR* resultMsg);
  	[id(3), helpstring("method cleanup")] HRESULT cleanup ([in] BSTR path, [in] VARIANT_BOOL byAPI, [out,retval] BSTR* resultMsg);
  	[id(4), helpstring("method resolve")] HRESULT resolve ([in] BSTR path, [in] VARIANT_BOOL byAPI, [in] VARIANT_BOOL recursive);

Index: CoreXmlFile.cpp
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/XmlBackEnd/CoreXmlFile.cpp,v
retrieving revision 1.37
retrieving revision 1.38
diff -C2 -d -r1.37 -r1.38
*** CoreXmlFile.cpp	13 May 2008 17:59:09 -0000	1.37
--- CoreXmlFile.cpp	20 May 2008 20:24:08 -0000	1.38
***************
*** 1548,1552 ****
  		if( m_sourceControl != SC_NONE )
  			getLatestVersion();        
! #pragma message( "idfdfgdfgdklf")
  		readAll( false );
  		//// graph has been read  successfully, get latest and update graph
--- 1548,1552 ----
  		if( m_sourceControl != SC_NONE )
  			getLatestVersion();        
! 
  		readAll( false );
  		//// graph has been read  successfully, get latest and update graph
***************
*** 4830,4833 ****
--- 4830,4835 ----
  				catch(hresult_exception&) {
  					// somebody else acquired it in the meantime
+ 					if( IDCANCEL == AfxMessageBox( in?msg_in:msg_out, MB_OKCANCEL))
+ 						lost_patience = true; // quit, no further attempts
  				}
  			}
***************
*** 6468,6488 ****
  
  	std::string holder;
! 	bool        ret;
  
  	if( m_svnByAPI) {
  		//ret = m_svn->isLockedByUser( fname, holder);
  		VARIANT_BOOL vb_locked;
  		CComBSTR     bs_holder;
! 		COMTHROW( m_comSvn->IsLocked( CComBSTR( fname.c_str()), &vb_locked, &bs_holder));
! 		CopyTo( bs_holder, holder);
! 		ret = vb_locked == VARIANT_TRUE;
  	}
  	else
! 		ret = m_cmdSvn->isLockedByUser( fname, holder);
  
  	if( ret)
  	{
  		user    = holder;
- 		newfile = false; // todo
  	}
  
--- 6470,6506 ----
  
  	std::string holder;
! 	bool        ret = false;
  
  	if( m_svnByAPI) {
  		//ret = m_svn->isLockedByUser( fname, holder);
+ 		VARIANT_BOOL is_verd;
  		VARIANT_BOOL vb_locked;
  		CComBSTR     bs_holder;
! 		COMTHROW( m_comSvn->IsVersioned( CComBSTR( fname.c_str()), VARIANT_FALSE /*isdir*/, VARIANT_TRUE /*suppress error*/, &is_verd)); 
! 		if( is_verd == VARIANT_TRUE)
! 		{
! 			newfile = false;
! 			COMTHROW( m_comSvn->IsLocked( CComBSTR( fname.c_str()), &vb_locked, &bs_holder));
! 			CopyTo( bs_holder, holder);
! 			ret = vb_locked == VARIANT_TRUE;
! 		}
! 		else
! 			newfile = true;
  	}
  	else
! 	{
! 		bool is_verd = m_cmdSvn->isVersioned( fname, false, true);
! 		if( is_verd)
! 		{
! 			newfile = false;
! 			ret = m_cmdSvn->isLockedByUser( fname, holder);
! 		}
! 		else
! 			newfile = true;
! 	}
  
  	if( ret)
  	{
  		user    = holder;
  	}
  
***************
*** 6505,6510 ****
  	if( ismodbyothers)
  		lStat = FS_MODIFIEDBYOTHERS;
! 	//else if( newfile) //TODO
! 	//	lStat = FS_NOTYETSAVED;
  	else
  		lStat = 0x0;
--- 6523,6528 ----
  	if( ismodbyothers)
  		lStat = FS_MODIFIEDBYOTHERS;
! 	else if( newfile)
! 		lStat = FS_NOTYETSAVED;
  	else
  		lStat = 0x0;
***************
*** 6783,6787 ****
  		//nm = makelink( container);
  
! 		if( user.empty())
  			msg = "Container \"" + nm + "\" is not held exclusively.";
  		else
--- 6801,6807 ----
  		//nm = makelink( container);
  
! 		if( newfile)
! 			msg = "Container \"" + nm + "\" is not yet saved into the repository.";
! 		else if( user.empty())
  			msg = "Container \"" + nm + "\" is not held exclusively.";
  		else
***************
*** 6863,6869 ****
  		getContainerFileName( container, file_name, true );
  
  		long lInfo( 0x0), lStat( 0x0);
  
! 		if( FileHelp::isFileReadOnly( file_name))
  		{
  			if( isCheckedOutByElseSVN( file_name))
--- 6883,6891 ----
  		getContainerFileName( container, file_name, true );
  
+ 		bool fexists = FileHelp::fileExist( file_name);
+ 
  		long lInfo( 0x0), lStat( 0x0);
  
! 		if( fexists && FileHelp::isFileReadOnly( file_name))
  		{
  			if( isCheckedOutByElseSVN( file_name))
***************
*** 6876,6880 ****
  			}
  		}
! 		else
  		{
  			lInfo = FS_LOCAL; // checked out by local user
--- 6898,6902 ----
  			}
  		}
! 		else if( fexists)
  		{
  			lInfo = FS_LOCAL; // checked out by local user
***************
*** 6882,6891 ****
  
  
! 		bool ismodbyothers = fileModifiedByOthers( container);
  
  		if( ismodbyothers)
  			lStat = FS_MODIFIEDBYOTHERS;
! 		//else if( newfile) //TODO
! 		//	lStat = FS_NOTYETSAVED;
  		else
  			lStat = 0x0;
--- 6904,6914 ----
  
  
! 		bool newfile = !fexists;
! 		bool ismodbyothers = fexists && fileModifiedByOthers( container);
  
  		if( ismodbyothers)
  			lStat = FS_MODIFIEDBYOTHERS;
! 		else if( newfile)
! 			lStat = FS_NOTYETSAVED;
  		else
  			lStat = 0x0;
***************
*** 7017,7023 ****
  	CTime lastWriteTime( attr.ftLastWriteTime );
  	bool rv = lastWriteTime > obj->m_lastWriteTime;
! 	if( isCC() || isSV())
  	{
  		return rv;
  	}
  	else if( isSS())
--- 7040,7062 ----
  	CTime lastWriteTime( attr.ftLastWriteTime );
  	bool rv = lastWriteTime > obj->m_lastWriteTime;
! 	if( isCC())
  	{
  		return rv;
+ 	}
+ 	else if( isSV())
+ 	{
+ 		VARIANT_BOOL is_utd = VARIANT_FALSE;
+ 		if( m_svnByAPI)
+ 		{
+ 			m_comSvn->IsUpToDate( CComBSTR( filename.c_str()), &is_utd);
+ 			rv = is_utd == VARIANT_TRUE;
+ 		}
+ 		else
+ 		{
+ 			bool out_of_date = false;
+ 			m_cmdSvn->statusOnServer( filename, false, std::string(), &out_of_date);
+ 			rv = out_of_date;
+ 		}
+ 
  	}
  	else if( isSS())

Index: SvnTester.cpp
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/XmlBackEnd/SvnTester.cpp,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** SvnTester.cpp	18 Apr 2008 16:31:51 -0000	1.5
--- SvnTester.cpp	20 May 2008 20:24:08 -0000	1.6
***************
*** 74,78 ****
  }
  
! STDMETHODIMP CSvnTester::status(BSTR p_path, VARIANT_BOOL p_byAPI, BSTR* p_ptrResultMsg)
  {
  	AFX_MANAGE_STATE(AfxGetStaticModuleState());
--- 74,78 ----
  }
  
! STDMETHODIMP CSvnTester::status(BSTR p_path, VARIANT_BOOL p_byAPI, VARIANT_BOOL p_onServer, BSTR* p_ptrResultMsg)
  {
  	AFX_MANAGE_STATE(AfxGetStaticModuleState());
***************
*** 99,103 ****
  				CopyTo( p_path, path);
  
! 				bool sc = m_apiSvn->status( path, true /*assemble info*/, stat_msg);
  
  				CopyTo( stat_msg, p_ptrResultMsg);
--- 99,110 ----
  				CopyTo( p_path, path);
  
! 				bool out_of_date    = false;
! 				bool repo_entry_mod = false;
! 				bool sc;
! 
! 				if( p_onServer == VARIANT_TRUE)
! 					sc = m_apiSvn->statusOnServer( path, true /*assemble info*/, stat_msg, &out_of_date, &repo_entry_mod);
! 				else
! 					sc = m_apiSvn->status( path, true /*assemble info*/, stat_msg);
  
  				CopyTo( stat_msg, p_ptrResultMsg);
***************
*** 120,124 ****
  			CopyTo( p_path, path);
  
! 			bool sc = m_cmdSvn->status( path, true /*assemble info*/, stat_msg);
  
  			CopyTo( stat_msg, p_ptrResultMsg);
--- 127,137 ----
  			CopyTo( p_path, path);
  
! 			bool out_of_date    = false;
! 			bool sc;
! 
! 			if( p_onServer == VARIANT_TRUE)
! 				sc = m_cmdSvn->statusOnServer( path, true /*assemble info*/, stat_msg, &out_of_date);
! 			else
! 				sc = m_cmdSvn->status( path, true /*assemble info*/, stat_msg);
  
  			CopyTo( stat_msg, p_ptrResultMsg);
***************
*** 692,697 ****
  			res.Append( "'.\n");
  
- 			WIN32_FILE_ATTRIBUTE_DATA attr;
- 			BOOL res;
  			CString path;
  			
--- 705,708 ----

Index: SvnHelper.cpp
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/XmlBackEnd/SvnHelper.cpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** SvnHelper.cpp	18 Apr 2008 16:37:02 -0000	1.2
--- SvnHelper.cpp	20 May 2008 20:24:08 -0000	1.3
***************
*** 54,59 ****
  	CComBSTR       res;
  	VARIANT_BOOL   byapi = p_apiAccess?VARIANT_TRUE : VARIANT_FALSE;
  
! 	if( SUCCEEDED( p->status( path, byapi, &res)))
  	{
  		CString r; CopyTo( res, r);
--- 54,60 ----
  	CComBSTR       res;
  	VARIANT_BOOL   byapi = p_apiAccess?VARIANT_TRUE : VARIANT_FALSE;
+ 	VARIANT_BOOL   onsrv = VARIANT_TRUE;
  
! 	if( SUCCEEDED( p->status( path, byapi, onsrv, &res)))
  	{
  		CString r; CopyTo( res, r);
***************
*** 171,174 ****
--- 172,213 ----
  	else
  		AfxMessageBox( ("Update command failed with " + p_localPath).c_str());
+ }
+ 
+ //static 
+ void CSvnHelper::invokeLock( const std::string& p_localPath, bool p_apiAccess)
+ {
+ 	CComPtr<ISvnTester> p;
+ 	p.CoCreateInstance( L"Mga.XmlbackEnd.SvnTester");
+ 	if( !p) {
+ 		AfxMessageBox( "Lock command failed because could not create invoker object.");
+ 		return;
+ 	}
+ 
+ 	CComBSTR       path  = p_localPath.c_str();
+ 	VARIANT_BOOL   byapi = p_apiAccess?VARIANT_TRUE : VARIANT_FALSE;
+ 
+ 	if( SUCCEEDED( p->lock( path, VARIANT_FALSE, byapi)))
+ 		AfxMessageBox( ("Lock command executed with " + p_localPath).c_str(), MB_ICONINFORMATION);
+ 	else
+ 		AfxMessageBox( ("Lock command failed with " + p_localPath).c_str());
+ }
+ 
+ //static 
+ void CSvnHelper::invokeUnlock( const std::string& p_localPath, bool p_apiAccess)
+ {
+ 	CComPtr<ISvnTester> p;
+ 	p.CoCreateInstance( L"Mga.XmlbackEnd.SvnTester");
+ 	if( !p) {
+ 		AfxMessageBox( "Unlock command failed because could not create invoker object.");
+ 		return;
+ 	}
+ 
+ 	CComBSTR       path  = p_localPath.c_str();
+ 	VARIANT_BOOL   byapi = p_apiAccess?VARIANT_TRUE : VARIANT_FALSE;
+ 
+ 	if( SUCCEEDED( p->unlock( path, VARIANT_FALSE, byapi)))
+ 		AfxMessageBox( ("Unlock command executed with " + p_localPath).c_str(), MB_ICONINFORMATION);
+ 	else
+ 		AfxMessageBox( ("Unlock command failed with " + p_localPath).c_str());
  }
  

Index: SvnBench.cpp
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/XmlBackEnd/SvnBench.cpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** SvnBench.cpp	18 Apr 2008 16:31:51 -0000	1.2
--- SvnBench.cpp	20 May 2008 20:24:08 -0000	1.3
***************
*** 103,106 ****
--- 103,108 ----
  	ON_BN_CLICKED(IDC_CLOSE_BUTTON, OnBnClickedCloseButton)
  	ON_BN_CLICKED(IDC_UPDATE_BUTTON, OnBnClickedUpdateButton)
+ 	ON_BN_CLICKED(IDC_LOCK_BUTTON, OnBnClickedLockButton)
+ 	ON_BN_CLICKED(IDC_UNLOCK_BUTTON, OnBnClickedUnlockButton)
  	ON_BN_CLICKED(IDC_TESTCONN_BUTTON, OnBnClickedTestConnButton)
  	ON_WM_SIZE()
***************
*** 259,262 ****
--- 261,290 ----
  	{
  		CSvnHelper::invokeUpdate( (LPCTSTR) m_lstStringVal, !m_bCmdExeOrAPI);
+ 	}
+ 	catch(...) { ASSERT(0); }
+ 	EndWaitCursor();
+ }
+ 
+ void CSvnBench::OnBnClickedLockButton()
+ {
+ 	UpdateData( TRUE);
+ 	BeginWaitCursor();
+ 	save();
+ 	try
+ 	{
+ 		CSvnHelper::invokeLock( (LPCTSTR) m_lstStringVal, !m_bCmdExeOrAPI);
+ 	}
+ 	catch(...) { ASSERT(0); }
+ 	EndWaitCursor();
+ }
+ 
+ void CSvnBench::OnBnClickedUnlockButton()
+ {
+ 	UpdateData( TRUE);
+ 	BeginWaitCursor();
+ 	save();
+ 	try
+ 	{
+ 		CSvnHelper::invokeUnlock( (LPCTSTR) m_lstStringVal, !m_bCmdExeOrAPI);
  	}
  	catch(...) { ASSERT(0); }

Index: SvnTester.h
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/XmlBackEnd/SvnTester.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** SvnTester.h	18 Apr 2008 16:31:51 -0000	1.3
--- SvnTester.h	20 May 2008 20:24:08 -0000	1.4
***************
*** 44,48 ****
  public:
  	STDMETHOD(info)    (BSTR url, VARIANT_BOOL byApi, VARIANT_BOOL recursive, BSTR* resultMsg);
! 	STDMETHOD(status)  (BSTR url, VARIANT_BOOL byApi, BSTR* resultMsg);
  	STDMETHOD(cleanup) (BSTR path, VARIANT_BOOL byApi, BSTR* resultMsg);
  	STDMETHOD(resolve) (BSTR path, VARIANT_BOOL byApi, VARIANT_BOOL recursive);
--- 44,48 ----
  public:
  	STDMETHOD(info)    (BSTR url, VARIANT_BOOL byApi, VARIANT_BOOL recursive, BSTR* resultMsg);
! 	STDMETHOD(status)  (BSTR url, VARIANT_BOOL byApi, VARIANT_BOOL onserver, BSTR* resultMsg);
  	STDMETHOD(cleanup) (BSTR path, VARIANT_BOOL byApi, BSTR* resultMsg);
  	STDMETHOD(resolve) (BSTR path, VARIANT_BOOL byApi, VARIANT_BOOL recursive);

Index: SvnBench.h
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/XmlBackEnd/SvnBench.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** SvnBench.h	18 Apr 2008 16:31:51 -0000	1.2
--- SvnBench.h	20 May 2008 20:24:08 -0000	1.3
***************
*** 42,45 ****
--- 42,47 ----
  	afx_msg void OnBnClickedCheckoutButton();
  	afx_msg void OnBnClickedUpdateButton();
+ 	afx_msg void OnBnClickedLockButton();
+ 	afx_msg void OnBnClickedUnlockButton();
  	afx_msg void OnBnClickedTestConnButton();
  	afx_msg void OnPaint();

Index: SvnHelper.h
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/XmlBackEnd/SvnHelper.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** SvnHelper.h	18 Apr 2008 16:37:02 -0000	1.2
--- SvnHelper.h	20 May 2008 20:24:08 -0000	1.3
***************
*** 16,19 ****
--- 16,21 ----
  	static void invokeCommit( const std::string& p_localPath, bool p_apiAccess);
  	static void invokeUpdate( const std::string& p_localPath, bool p_apiAccess);
+ 	static void invokeLock( const std::string& p_localPath, bool p_apiAccess);
+ 	static void invokeUnlock( const std::string& p_localPath, bool p_apiAccess);
  	static void invokeTestSubDirs();
  };

Index: SvnExec.h
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/XmlBackEnd/SvnExec.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** SvnExec.h	13 Feb 2008 18:54:57 -0000	1.2
--- SvnExec.h	20 May 2008 20:24:08 -0000	1.3
***************
*** 61,64 ****
--- 61,65 ----
  	STDMETHOD(ReplaceUserName)(BSTR userName);
  	STDMETHOD(Logging)(VARIANT_BOOL onoff, BSTR logfile);
+ 	STDMETHOD(IsUpToDate)(BSTR path, VARIANT_BOOL* upToDate);
  
  protected:

Index: resource.h
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/XmlBackEnd/resource.h,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** resource.h	18 Apr 2008 16:37:02 -0000	1.8
--- resource.h	20 May 2008 20:24:08 -0000	1.9
***************
*** 43,49 ****
--- 43,52 ----
  #define IDC_CHECKOUT_BUTTON             228
  #define IDC_EDIT1                       229
+ #define IDC_LOCK_BUTTON                 229
  #define IDC_COMBO_URL_AND_PATH          230
  #define IDC_CHECK1                      231
  #define IDC_RADIO_CACHED                232
+ #define IDC_LOCK_BUTTON2                232
+ #define IDC_UNLOCK_BUTTON               232
  #define IDC_RADIO_USPW                  233
  #define IDC_RADIO_PPK                   234

Index: SvnExec.cpp
===================================================================
RCS file: /project/gme-repository/GMESRC/GME/XmlBackEnd/SvnExec.cpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** SvnExec.cpp	10 Apr 2008 22:32:37 -0000	1.4
--- SvnExec.cpp	20 May 2008 20:24:08 -0000	1.5
***************
*** 304,305 ****
--- 304,326 ----
  }
  
+ STDMETHODIMP CSvnExec::IsUpToDate(BSTR p_path, VARIANT_BOOL* p_upToDate)
+ {
+ 	AFX_MANAGE_STATE(AfxGetStaticModuleState());
+ 
+ #if(USESVN)
+ 	bool        out_of_date           = false;
+ 	bool        repo_entry_modified   = false;
+ 
+ 	std::string ph;
+ 	CopyTo( p_path, ph);
+ 	bool succ = m_impl->statusOnServer( ph, false, std::string(), &out_of_date, &repo_entry_modified);
+ 	ASSERT( succ);
+ 
+ 	if( p_upToDate)
+ 		*p_upToDate = b2vb( out_of_date);
+ 
+ 	return S_OK;
+ #else
+ 	return E_NOTIMPL;
+ #endif
+ }



More information about the GME-commit mailing list