Re: Git 2.19 Segmentation fault 11 on macOS
- From
Derrick Stolee <stolee@gmail.com>
- Date
- Sep 11, 2018, 16:13 UTC
- Message-ID
- <fd241679-2283-4e01-315b-db27be8a794c@gmail.com>
- In-Reply-To
- <844da493-b1c1-b295-0094-beafd48f3b50@gmail.com>
On 9/11/2018 12:04 PM, Derrick Stolee wrote:
Show 70 quoted lines
> On 9/11/2018 11:38 AM, Derrick Stolee wrote:
>> On 9/11/2018 11:25 AM, ryenus wrote:
>>> I just updated to 2.19 via Homebrew, git range-diff seems cool, but I
>>> only got a Segmentation fault: 11
>>>
>>> $ git version; git range-diff origin/master HEAD@{2} HEAD
>>> git version 2.19.0
>>> Segmentation fault: 11
>>>
>>> Both origin/master and my local branch each got two new commits of
>>> their own,
>>> please correct me if this is not the expected way to use git
>>> range-diff.
>>>
>>> FYI, I've created a sample repo here:
>>> https://github.com/ryenus/range-diff-segfault/
>>
>> Hi Ryenus,
>>
>> Thanks for the report!
>>
>> I ran something similar using Git for Windows 2.19.0-rc2. I had to
>> run `git commit --amend --no-edit` on the tip commit to make my local
>> master disagree with origin/master. I then ran the following:
>>
>> $ git range-diff origin/master HEAD~1 HEAD
>> -: ------- > 1: 5009c62 aaa
>>
>> With this, the command succeeded for me. There is another way to get
>> a similar result, could you try it?
>>
>> $ git range-diff origin/master~1..origin/master HEAD~1..HEAD
>> 1: f14d571 = 1: 5009c62 aaa
>>
>> Otherwise, we can now get started trying to repro this on a Mac. Thanks!
>
> The patch below includes a test that fails on Mac OSX with a segfault.
>
> GitGitGadget PR: https://github.com/gitgitgadget/git/pull/36
> Failed Build:
> https://git-for-windows.visualstudio.com/git/_build/results?buildId=18616&view=logs
>
> -->8--
>
> From 3ee470d09d54b9ad7ab950f17051d625db0c8654 Mon Sep 17 00:00:00 2001
> From: Derrick Stolee <dstolee@microsoft.com>
> Date: Tue, 11 Sep 2018 11:42:03 -0400
> Subject: [PATCH] range-diff: attempt to create test that fails on OSX
>
> Signed-off-by: Derrick Stolee <dstolee@microsoft.com>
> ---
> t/t3206-range-diff.sh | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/t/t3206-range-diff.sh b/t/t3206-range-diff.sh
> index 2237c7f4af..02744b07a8 100755
> --- a/t/t3206-range-diff.sh
> +++ b/t/t3206-range-diff.sh
> @@ -142,4 +142,9 @@ test_expect_success 'changed message' '
> test_cmp expected actual
> '
>
> +test_expect_success 'amend and check' '
> + git commit --amend -m "new message" &&
> + git range-diff changed-message HEAD@{2} HEAD
> +'
> +
> test_done
> --
> 2.19.0.rc2.windows.1Sorry, nevermind. The test failed for a different reason:
2018-09-11T16:02:20.2680990Z ++ git range-diff changed-message 'HEAD@{2}' HEAD 2018-09-11T16:02:20.2779250Z fatal: Log for 'HEAD' only has 2 entries. 2018-09-11T16:02:20.2802520Z error: could not parse log for 'changed-message..HEAD@{2}' 2018-09-11T16:02:20.2817470Z error: last command exited with $?=255 2018-09-11T16:02:20.2832300Z not ok 12 - amend and check
Ryenus, it would help if you could create and push the following branches based on your local repro:
git branch base HEAD@{2}git branch topic HEAD
git push origin base topic
Also, does the following command fail, after creating the branches?
git range-diff origin/master base topic
Thanks,
-Stolee