Thread (11 messages) flat view 11 messages, 3 authors, 2016-06-15

Re: [PATCH/RFC 3/3] upload-archive: use start_command instead of fork

From: Erik Faye-Lund <hidden>
Date: 2016-06-15 22:51:33

On Fri, Jul 8, 2011 at 12:27 AM, Jeff King [off-list ref] wrote:
On Fri, Jul 08, 2011 at 12:25:00AM +0200, Erik Faye-Lund wrote:
quoted
On Thu, Jul 7, 2011 at 9:15 PM, Jeff King [off-list ref] wrote:
quoted
On Thu, Jul 07, 2011 at 01:43:09PM +0200, Erik Faye-Lund wrote:
quoted
The POSIX-function fork is not supported on Windows. Use our
start_command API instead.
Is start_command the right solution? From my reading, the fork is
actually because we want to set up a sideband multiplexer. Should we not
just be using start_async() to start a thread, as we do in receive-pack?
I considered that, but discarded it because I figured it required me
to plug through a file descriptor all the way through the code. But
perhaps I was wrong, and dup2 will make that job a lot easier?
Yeah, exactly. The current code is already using dup2 in the same way.
It does, but I'm not entirely sure how dup2 works when start_async is
implemented with threads. Won't cause the multiplexer to fail (the
multiplexer and the archive-thread needs different stdouts), because
file descriptors are process-resources, and not thread-resources?

I guess I could dup stdout/stderr before dup2'ing, and have the
multiplexer write to explicitly to the duped fds. It's starting to
sound very confusing to my ears, but perhaps it's the best option
still ;)
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help