This is the mail archive of the cygwin mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: 64-bit gdb: invalid decimal " 0x22DBF0"

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 <stdio.h>
> #include <stdlib.h>
> 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.

Thanks for the reports,

Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

Problem reports:
Unsubscribe info:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]