X-Recipient: archive-cygwin AT delorie DOT com DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:message-id:date:from:mime-version:to:subject :references:in-reply-to:content-type:content-transfer-encoding; q=dns; s=default; b=RZ56rqgj7SaSyRqMScS/fxn0I6MC+xBAe2wT5ABEWpY xTqXQlAv2A6okaouvcX140oCJhfnOUMjOFJCgxRrjMAMP7R0TAEAuc/S/ByjIyIC N2MpX5rfyxgErNKQ+dAxjcqhZOTmDLtx+NTMLKeBNymTnqMg9vnJTPu5h+4ldfAE = DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:message-id:date:from:mime-version:to:subject :references:in-reply-to:content-type:content-transfer-encoding; s=default; bh=KV2YnmLpKjgSX6DmTA00WSXhPuY=; b=yqEP+q1ek847CKo+y j46ixj76d68UHtI8BPGtS63AjieZMV9cFitJPXVHfKhB+IOsv2ka0+At3Sef6LdX z2rBs5/67/Hw8vMXOfY7owe69tomCI08rXRdcKBpRdMyzsmPGPLCb38GPN25aZRJ UUeauyQ2CDlZL1+DFs+ielvIVw= Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com X-Spam-SWARE-Status: No, score=-0.5 required=5.0 tests=AWL,BAYES_50,KHOP_THREADED,RDNS_NONE,SPF_NEUTRAL autolearn=no version=3.3.1 Message-ID: <51F6BEF0.10003@cs.utoronto.ca> Date: Mon, 29 Jul 2013 15:13:52 -0400 From: Ryan Johnson User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130620 Thunderbird/17.0.7 MIME-Version: 1.0 To: cygwin AT cygwin DOT com Subject: Re: gdb hangs on ^Z [was: Re: 64-bit gdb: invalid decimal " 0x22DBF0"] References: <51F33E9D DOT 9030703 AT cs DOT utoronto DOT ca> <51F3A133 DOT 8090805 AT star DOT sr DOT bham DOT ac DOT uk> <20130729110626 DOT GB30069 AT calimero DOT vinschen DOT de> <51F691D2 DOT 205 AT cs DOT utoronto DOT ca> <20130729191118 DOT GG4166 AT calimero DOT vinschen DOT de> In-Reply-To: <20130729191118.GG4166@calimero.vinschen.de> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 29/07/2013 3:11 PM, Corinna Vinschen wrote: > On Jul 29 12:01, Ryan Johnson wrote: >> On 29/07/2013 7:06 AM, Corinna Vinschen wrote: >>> On Jul 27 11:30, Daniel Brown wrote: >>>> I have also ran into this problem, in my case though I have managed >>>> to reduce the issue down to an fgets call when reading a pipe. >>>> The following code causes the issue for me if I try and debug it: >>>> >>>> #include >>>> #include >>>> >>>> int main(int argc, char** argv) { >>>> char out[100] = {0}; >>>> FILE *pipe; >>>> >>>> if ((pipe = popen("uname -r", "rt")) == NULL) >>>> fprintf(stderr,"Failed to execute popen command"); >>>> >>>> if(fgets(out, 100, pipe) == NULL) >>>> fprintf(stderr,"Failed to read popen buffer"); >>>> >>>> printf("%s\n", out); >>>> >>>> pclose(pipe); >>>> >>>> return (EXIT_SUCCESS); >>>> } >>>> >>>> I compile with `gcc -g main.c` then `gdb a.exe` and type `run`, the >>>> error `invalid decimal " 0x23DBF0"` then pops up. >>>> I have tried the latest snapshot cygwin1.dll (1.7.23s(0.268/5/3)) >>>> and the error is still there. >>> This is a problem in GDB, not in the Cygwin DLL. My mistake. I fetched >>> the official 7.6 version of GDB since it already contained Cygwin x86_64 >>> support so I thought it's sufficient. Unfortunately it doesn't handle >>> special Cygwin strings in terms of Cygwin signal handling correctly. >>> >>> I'm just uploading a gdb-7.6.50 version build from current CVS which >>> should fix this. >> Confirmed that this problem is fixed [1]... however, my original STC >> still hangs because gdb somehow interferes with the choreography of >> SIGTSTP between victim and its owning shell. >> >> With default signal handling (SIGTSTP stop print pass) gdb breaks in >> when the victim receives ^Z, but both gdb and the victim hang once >> gdb continues; gdb cannot be interrupted with ^C [2]. Killing gdb >> allows the victim to finish backgrounding itself, apparently none >> the worse for wear. > I'm not sure if ^Z can reliably work in the GDB scenario. That's > Chris' domain, but AFAICS, the fact that GDB calls the inferior > process with CreateProcess, the job control facility of the shell > will be broken. I'm talking about the case where gdb attaches to a running proccess... I don't know how you could ever handle ^Z in a process gdb started. Ryan -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple