diff options
author | Marius Ungureanu <marius.ungureanu@xamarin.com> | 2016-02-15 18:04:34 +0300 |
---|---|---|
committer | Marius Ungureanu <marius.ungureanu@xamarin.com> | 2016-02-15 18:23:03 +0300 |
commit | 617d9937ecfd8df3ec047fabdeb99bb0cb59a8e6 (patch) | |
tree | d708a0a52f0013e4d63b231c8da084e02c15a1c0 | |
parent | d8d8326121cb3e79558e88a86b73e5531d57aa91 (diff) |
Fix memory corruption in blame.
-rw-r--r-- | LibGit2Sharp/BlameHunk.cs | 7 | ||||
-rw-r--r-- | LibGit2Sharp/Core/GitBlame.cs | 8 |
2 files changed, 8 insertions, 7 deletions
diff --git a/LibGit2Sharp/BlameHunk.cs b/LibGit2Sharp/BlameHunk.cs index 2838de06..de580e2b 100644 --- a/LibGit2Sharp/BlameHunk.cs +++ b/LibGit2Sharp/BlameHunk.cs @@ -29,11 +29,12 @@ namespace LibGit2Sharp { InitialPath = LaxUtf8Marshaler.FromNative(rawHunk.OrigPath); } - LineCount = (int)rawHunk.LinesInHunk; + + LineCount = (int)rawHunk.LinesInHunk; // Libgit2's line numbers are 1-based - FinalStartLineNumber = (int)rawHunk.FinalStartLineNumber - 1; - InitialStartLineNumber = (int)rawHunk.OrigStartLineNumber - 1; + FinalStartLineNumber = (int)rawHunk.FinalStartLineNumber - 1; + InitialStartLineNumber = (int)rawHunk.OrigStartLineNumber - 1; // Signature objects need to have ownership of their native pointers if (rawHunk.FinalSignature != IntPtr.Zero) diff --git a/LibGit2Sharp/Core/GitBlame.cs b/LibGit2Sharp/Core/GitBlame.cs index f48459e5..fec858e4 100644 --- a/LibGit2Sharp/Core/GitBlame.cs +++ b/LibGit2Sharp/Core/GitBlame.cs @@ -55,16 +55,16 @@ namespace LibGit2Sharp.Core [StructLayout(LayoutKind.Sequential)] internal class GitBlameHunk - { - public IntPtr LinesInHunk; + { + public IntPtr LinesInHunk; public GitOid FinalCommitId; - public IntPtr FinalStartLineNumber; + public IntPtr FinalStartLineNumber; public IntPtr FinalSignature; public GitOid OrigCommitId; public IntPtr OrigPath; - public IntPtr OrigStartLineNumber; + public IntPtr OrigStartLineNumber; public IntPtr OrigSignature; public byte Boundary; |