@@ -108,21 +108,9 @@ public virtual Commit FindCommonAncestor(Commit first, Commit second)
108108 Ensure . ArgumentNotNull ( first , "first" ) ;
109109 Ensure . ArgumentNotNull ( second , "second" ) ;
110110
111- using ( var osw1 = new ObjectSafeWrapper ( first . Id , repo ) )
112- using ( var osw2 = new ObjectSafeWrapper ( second . Id , repo ) )
113- {
114- GitOid ret ;
115- int result = NativeMethods . git_merge_base ( out ret , repo . Handle , osw1 . ObjectPtr , osw2 . ObjectPtr ) ;
116-
117- if ( result == ( int ) GitErrorCode . NotFound )
118- {
119- return null ;
120- }
111+ ObjectId id = Proxy . git_merge_base ( repo . Handle , first , second ) ;
121112
122- Ensure . Success ( result ) ;
123-
124- return repo . Lookup < Commit > ( new ObjectId ( ret ) ) ;
125- }
113+ return id == null ? null : repo . Lookup < Commit > ( id ) ;
126114 }
127115
128116 /// <summary>
@@ -192,11 +180,9 @@ private class CommitEnumerator : IEnumerator<Commit>
192180 public CommitEnumerator ( Repository repo , Filter filter )
193181 {
194182 this . repo = repo ;
195- int res = NativeMethods . git_revwalk_new ( out handle , repo . Handle ) ;
183+ handle = Proxy . git_revwalk_new ( repo . Handle ) ;
196184 repo . RegisterForCleanup ( handle ) ;
197185
198- Ensure . Success ( res ) ;
199-
200186 Sort ( filter . SortBy ) ;
201187 Push ( filter . SinceList ) ;
202188 Hide ( filter . UntilList ) ;
@@ -216,24 +202,21 @@ object IEnumerator.Current
216202
217203 public bool MoveNext ( )
218204 {
219- GitOid oid ;
220- int res = NativeMethods . git_revwalk_next ( out oid , handle ) ;
205+ ObjectId id = Proxy . git_revwalk_next ( handle ) ;
221206
222- if ( res == ( int ) GitErrorCode . RevWalkOver )
207+ if ( id == null )
223208 {
224209 return false ;
225210 }
226211
227- Ensure . Success ( res ) ;
228-
229- currentOid = new ObjectId ( oid ) ;
212+ currentOid = id ;
230213
231214 return true ;
232215 }
233216
234217 public void Reset ( )
235218 {
236- NativeMethods . git_revwalk_reset ( handle ) ;
219+ Proxy . git_revwalk_reset ( handle ) ;
237220 }
238221
239222 #endregion
@@ -249,23 +232,21 @@ private void Dispose(bool disposing)
249232 handle . SafeDispose ( ) ;
250233 }
251234
252- private delegate int HidePushSignature ( RevWalkerSafeHandle handle , ref GitOid oid ) ;
235+ private delegate void HidePushSignature ( RevWalkerSafeHandle handle , ObjectId id ) ;
253236
254237 private void InternalHidePush ( IList < object > identifier , HidePushSignature hidePush )
255238 {
256239 IEnumerable < ObjectId > oids = RetrieveCommitOids ( identifier ) . TakeWhile ( o => o != null ) ;
257240
258241 foreach ( ObjectId actedOn in oids )
259242 {
260- GitOid oid = actedOn . Oid ;
261- int res = hidePush ( handle , ref oid ) ;
262- Ensure . Success ( res ) ;
243+ hidePush ( handle , actedOn ) ;
263244 }
264245 }
265246
266247 private void Push ( IList < object > identifier )
267248 {
268- InternalHidePush ( identifier , NativeMethods . git_revwalk_push ) ;
249+ InternalHidePush ( identifier , Proxy . git_revwalk_push ) ;
269250 }
270251
271252 private void Hide ( IList < object > identifier )
@@ -275,12 +256,12 @@ private void Hide(IList<object> identifier)
275256 return ;
276257 }
277258
278- InternalHidePush ( identifier , NativeMethods . git_revwalk_hide ) ;
259+ InternalHidePush ( identifier , Proxy . git_revwalk_hide ) ;
279260 }
280261
281262 private void Sort ( GitSortOptions options )
282263 {
283- NativeMethods . git_revwalk_sorting ( handle , options ) ;
264+ Proxy . git_revwalk_sorting ( handle , options ) ;
284265 }
285266
286267 private ObjectId DereferenceToCommit ( string identifier )
0 commit comments