Thread (6 messages) 6 messages, 4 authors, 2024-07-22

Re: [PATCH v3 4/4] add-patch: render hunks through the pager

From: Junio C Hamano <hidden>
Date: 2024-07-17 20:03:57

phillip.wood123@gmail.com writes:
quoted
-	test_write_lines P q | GIT_PAGER="head -n 1" test_terminal git add -p
+	test_write_lines P q |
+	(
+		GIT_PAGER="head -n 1" &&
+		export GIT_PAGER &&
+		test_terminal git add -p >actual
+	)
That's surprising, why does running git in a sub-shell stop it from
segfaulting?
Yeah, it indeed is curious.  

The rewrite resolves another iffy point in the original---you are
not supposed to attempt a one-shot assignment to the environment
variable when you are running a shell function, as that is not
portable.  And the above rewrite is a common way to fix that.

But still, yes, it is curious why the original segfaults.  Is there
some race there and having a subshell shifts the timing, or
something?
My worry was that this would paper over a bug as we shouldn't be
calling wait_for_pager() without setting up the pager
successfully. How easy would it be to fix the source of the problem?
;-)  Nice to see people trying to do the right thing.

Thanks.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help