[racket-dev] try the GRacket2 branch

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Tue Nov 9 19:29:12 EST 2010

I should have paid more attention to your observation that it might be
related to sawfish. Eli ran into the same problem, and the latest
development version now avoids annoying sawfish. Let me know if you
still see problems.

At Sat, 30 Oct 2010 20:31:43 +0200, "Jose A. Ortega Ruiz" wrote:
> On Sat, Oct 30 2010, Matthew Flatt wrote:
> 
> > At Fri, 29 Oct 2010 01:04:02 +0200, "Jose A. Ortega Ruiz" wrote:
> >> In a build from a checkout of a few minutes ago, drracket dies on me
> >> when i try to resize its window, with the following message to the
> >> console:
> >> 
> >> The program '<unknown>' received an X Window System error.
> >> This probably reflects a bug in the program.
> >> The error was 'BadMatch (invalid parameter attributes)'.
> >>   (Details: serial 4084 error_code 8 request_code 59 minor_code 0)
> >>   (Note to programmers: normally, X errors are reported asynchronously;
> >>    that is, you will receive the error a while after causing it.
> >>    To debug your program, run it with the --sync command line
> >>    option to change this behavior. You can then get a meaningful
> >>    backtrace from your debugger if you break on the gdk_x_error()
> >>    function.)
> >> 
> >> I've tried to pass --sync to drracket, but it complains that the flag is
> >> not recognized.
> >> 
> >> This is on a debian unstable box with gtk 2.20.1.
> >
> > This happens consistently for you, I guess? I tried a Debian Unstable
> > install (with Gtk 2.20.1), and it worked ok for me, so I'm not sure
> > what's different.
> 
> Yes, it happens all the time. I just tried with plain gracket, and it
> displays an error that might be more informative (this, again, happens
> when i try to resize the main window):
> 
> > ./gracket
> make-bytes: out of memory making byte string of length 17169122912
> 
>  === context ===
> /home/jao/src/scheme/racket/collects/racket/draw/private/bitmap.rkt:66:2
> /home/jao/src/scheme/racket/collects/racket/private/class-internal.rkt:3596:0:
> continue-make-super
> /home/jao/src/scheme/racket/collects/mred/private/wx/gtk/dc.rkt:27:2
> /home/jao/src/scheme/racket/collects/racket/private/class-internal.rkt:3546:0:
> continue-make-object
> /home/jao/src/scheme/racket/collects/racket/private/class-internal.rkt:3468:2:
> make-object
> /home/jao/src/scheme/racket/collects/mred/private/wx/common/backing-dc.rkt:106:4
> :
> get-cr method in backing-dc%
> /home/jao/src/scheme/racket/collects/racket/draw/private/dc.rkt:623:4:
> set-clipping-rect method in dc%
> /home/jao/src/scheme/racket/collects/mred/private/wxme/text.rkt:4933:2:
> refresh method in text%
> /home/jao/src/scheme/racket/collects/mred/private/wxme/editor-canvas.rkt:586:2:
> redraw method in editor-canvas%
> /home/jao/src/scheme/racket/collects/mred/private/wxme/text.rkt:2503:2:
> set-max-width method in text%
> /home/jao/src/scheme/racket/collects/racket/private/more-scheme.rkt:149:2:
> call-with-break-parameterization
> /home/jao/src/scheme/racket/collects/racket/private/more-scheme.rkt:265:2:
> call-with-exception-handler
> /home/jao/src/scheme/racket/collects/racket/private/more-scheme.rkt:149:2:
> call-with-break-parameterization
> /home/jao/src/scheme/racket/collects/racket/private/more-scheme.rkt:265:2:
> call-with-exception-handler
> /home/jao/src/scheme/racket/collects/mred/private/wx/common/queue.rkt:359:7
> /home/jao/src/scheme/racket/collects/mred/private/wx/common/queue.rkt:396:26
> 
> make-bytes: out of memory making byte string of length 17169122912
> 
>  === context ===
> /home/jao/src/scheme/racket/collects/racket/draw/private/bitmap.rkt:66:2
> /home/jao/src/scheme/racket/collects/racket/private/class-internal.rkt:3596:0:
> continue-make-super
> /home/jao/src/scheme/racket/collects/mred/private/wx/gtk/dc.rkt:27:2
> /home/jao/src/scheme/racket/collects/racket/private/class-internal.rkt:3546:0:
> continue-make-object
> /home/jao/src/scheme/racket/collects/racket/private/class-internal.rkt:3468:2:
> make-object
> /home/jao/src/scheme/racket/collects/mred/private/wx/common/backing-dc.rkt:106:4
> :
> get-cr method in backing-dc%
> /home/jao/src/scheme/racket/collects/mred/private/wx/common/canvas-mixin.rkt:137
> :13
> /home/jao/src/scheme/racket/collects/mred/private/wx/common/queue.rkt:359:7
> /home/jao/src/scheme/racket/collects/mred/private/wx/common/queue.rkt:396:26
> 
> on-size in window<%>: expected argument of type <exact integer in [0,
> 10000]>; given 65535
> 
>  === context ===
> /home/jao/src/scheme/racket/collects/mred/private/mrwindow.rkt:144:17:
> on-size method in ...private/mrwindow.rkt:127:4
> /home/jao/src/scheme/racket/collects/racket/private/more-scheme.rkt:149:2:
> call-with-break-parameterization
> /home/jao/src/scheme/racket/collects/racket/private/more-scheme.rkt:265:2:
> call-with-exception-handler
> /home/jao/src/scheme/racket/collects/mred/private/wx/common/queue.rkt:359:7
> /home/jao/src/scheme/racket/collects/mred/private/wx/common/queue.rkt:396:26
> 
> > Instead of `--sync', you could provide the `-synchronous' option (i.e,
> > the old X-style flag, which GRacket supports for compatibility with the
> > old version and translates to `--sync' for Gtk). Combining that flag
> > with gdb, you might be able to get some information.
> 
> I'll try that, thanks. I will try also with another window manager: this
> is using sawfish, and could be its fault.
> 
> jao


Posted on the dev mailing list.