@@ -175,25 +175,26 @@ public VCSMergeResult merge(String srcBranchName, String dstBranchName, String c
175175 checkout (getBranchUrl (dstBranchName ), wc .getFolder ());
176176
177177 DefaultSVNOptions options = (DefaultSVNOptions ) diffClient .getOptions ();
178- final VCSMergeResult res = new VCSMergeResult ();
178+ final List < String > conflictingFiles = new ArrayList <> ();
179179 options .setConflictHandler (new ISVNConflictHandler () {
180180 @ Override
181181 public SVNConflictResult handleConflict (SVNConflictDescription conflictDescription )
182182 throws SVNException {
183- res . getConflictingFiles () .add (conflictDescription .getMergeFiles ().getLocalPath ());
183+ conflictingFiles .add (conflictDescription .getMergeFiles ().getLocalPath ());
184184 return new SVNConflictResult (SVNConflictChoice .POSTPONE ,
185185 conflictDescription .getMergeFiles ().getResultFile ());
186186 }
187187 });
188188
189+
189190 try {
190191 SVNRevisionRange range = new SVNRevisionRange (SVNRevision .create (1 ), SVNRevision .HEAD );
191192 diffClient .doMerge (getBranchUrl (srcBranchName ),
192193 SVNRevision .HEAD , Collections .singleton (range ),
193194 wc .getFolder (), SVNDepth .UNKNOWN , true , false , false , false );
194195
195- res . setSuccess ( res . getConflictingFiles (). isEmpty () );
196- if (res . getSuccess () ) {
196+ Boolean success = conflictingFiles . isEmpty ();
197+ if (success ) {
197198 clientManager
198199 .getCommitClient ()
199200 .doCommit (new File [] {wc .getFolder ()}, false , commitMessage ,
@@ -207,12 +208,11 @@ public SVNConflictResult handleConflict(SVNConflictDescription conflictDescripti
207208 wc .setCorrupted (true );
208209 }
209210 }
211+ return new VCSMergeResult (success , conflictingFiles );
210212 } catch (Exception e ) {
211213 wc .setCorrupted (true );
212214 throw e ;
213215 }
214-
215- return res ;
216216 }
217217 } catch (SVNException e ) {
218218 throw new EVCSException (e );
0 commit comments