Skip to content

Commit 1ca86ad

Browse files
committed
fix: failed to discard changes in a new file which has been staged partically (#2189)
Signed-off-by: leo <longshuang@msn.cn>
1 parent 7a753e7 commit 1ca86ad

File tree

2 files changed

+4
-5
lines changed

2 files changed

+4
-5
lines changed

src/Models/DiffResult.cs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -124,9 +124,9 @@ public void GenerateNewPatchFromSelection(Change change, string fileBlobGuid, Te
124124
continue;
125125

126126
if (i >= selection.StartLine - 1 && i < selection.EndLine)
127-
writer.WriteLine($"+{line.Content}");
127+
WriteLine(writer, '+', line);
128128
else
129-
writer.WriteLine($" {line.Content}");
129+
WriteLine(writer, ' ', line);
130130
}
131131
}
132132
else
@@ -137,11 +137,10 @@ public void GenerateNewPatchFromSelection(Change change, string fileBlobGuid, Te
137137
var line = Lines[i];
138138
if (line.Type != TextDiffLineType.Added)
139139
continue;
140-
writer.WriteLine($"+{line.Content}");
140+
WriteLine(writer, '+', line);
141141
}
142142
}
143143

144-
writer.WriteLine("\\ No newline at end of file");
145144
writer.Flush();
146145
}
147146

src/Views/TextDiffView.axaml.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1562,7 +1562,7 @@ private async void OnDiscardChunk(object _1, RoutedEventArgs _2)
15621562
using var lockWatcher = repo.LockWatcher();
15631563

15641564
var tmpFile = Path.GetTempFileName();
1565-
if (change.Index == Models.ChangeState.Added)
1565+
if (change.WorkTree == Models.ChangeState.Untracked)
15661566
{
15671567
diff.GenerateNewPatchFromSelection(change, null, selection, true, tmpFile);
15681568
}

0 commit comments

Comments
 (0)