Skip to content

Commit

Permalink
Fix solution path
Browse files Browse the repository at this point in the history
Minor bugs for change deltas
  • Loading branch information
albfan committed Jan 23, 2016
1 parent badd2fc commit 35b96d1
Showing 1 changed file with 9 additions and 7 deletions.
16 changes: 9 additions & 7 deletions src/main/java/org/jmeld/model/LevenshteinTableModel.java
Original file line number Diff line number Diff line change
Expand Up @@ -156,19 +156,21 @@ private void buildSolutionPath() {
yOffset = offsetForLineRevised;
} else if (next.isChange()) {
List<JMDelta> changedDeltas = next.getChangeRevision().getDeltas();
int startOffset = 0;
int startOffsetOrg = 0;
int startOffsetRev = 0;
xOffset = offsetForLineOriginal;
yOffset = offsetForLineRevised;
for (Iterator<JMDelta> jmDeltaIterator = changedDeltas.iterator(); jmDeltaIterator.hasNext(); ) {
JMDelta changeDelta = jmDeltaIterator.next();

JMChunk originalChange = changeDelta.getOriginal();
JMChunk revisedChange = changeDelta.getRevised();
int sameChars = originalChange.getAnchor();
xOffset = offsetForLineOriginal;
yOffset = offsetForLineRevised;
for (int i = 0; i < sameChars - startOffset; i++) {
routeDiff.put(new Point(i + xOffset + startOffset, i + yOffset + startOffset), Color.GRAY);
int sameChars = originalChange.getAnchor() - xOffset;
for (int i = 0; i < sameChars; i++) {
routeDiff.put(new Point(i + xOffset, i + yOffset), Color.GRAY);
}
startOffset = sameChars + originalChange.getSize();
startOffsetOrg = sameChars + originalChange.getSize();
startOffsetRev = sameChars + revisedChange.getSize();
xOffset += sameChars;
yOffset += sameChars;
int removeFromOrigin = originalChange.getSize();
Expand Down

0 comments on commit 35b96d1

Please sign in to comment.