diff --git a/src/diff_list.cc b/src/diff_list.cc index 9eae3e716..2ef784398 100755 --- a/src/diff_list.cc +++ b/src/diff_list.cc @@ -211,6 +211,9 @@ Handle GitDiffList::Patch(const Arguments& args) { toReturn->Set(String::NewSymbol("patch"), to); if (delta_out != NULL) { + delta_out = (const git_diff_delta * )git_diff_delta_dup(delta_out); + } + if (delta_out != NULL) { to = GitDelta::New((void *)delta_out); } else { to = Null(); diff --git a/v0.18.0.json b/v0.18.0.json index 5c800ca1d..58127837d 100644 --- a/v0.18.0.json +++ b/v0.18.0.json @@ -3689,6 +3689,7 @@ "name": "delta_out", "jsName": "delta", "cType": "const git_diff_delta **", + "copy": "git_diff_delta_dup", "cppClassName": "GitDelta", "jsClassName": "Delta", "isReturn": true,