Subject: Re: [PATCHv3] gpg-interface: check gpg signature creation status

From: Junio C Hamano <[email-masked]>
Date: Tue, 14 Jun 2016 11:13:54 -0700

Michael J Gruber <[email-masked]> writes:

>  	bottom = signature->len;
> -	len = strbuf_read(signature, gpg.out, 1024);
> +	strbuf_read(signature, gpg.out, 1024);
> +	strbuf_read(&err, gpg.err, 0);

Hmmmm, isn't this asking for a deadlock?  When GPG spews more than
what would fit in a pipe buffer to its standard error (hence gets
blocked), its standard output may not complete, and the we would get
stuck by attempting to read from gpg.out, failing to reach the other
strbuf_read() that would unblock GPG by reading from gpg.err?