Re: [racket-dev] weird (memory?) bug using (dis)similar require mechanisms
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Hi Matthew, On 09/10/11 22:49, Matthew Flatt wrote: At Fri, 09 Sep 2011 12:29:13 +0200, Marijn wrote: this racket bug was discovered when I was trying out geiser which starts programs in a way that exposes this bug. The program starts correctly but none of the buttons work (or only reserve screen space) and it is hard to terminate the program. I think this is now fixed. For me, the GUI worked until I clicked a button that needed to grow the frame, at which point it got stuck due to competing callbacks with different opinions on the frame height. (One of those callbacks was wrong.) Seems to work for me too now. The only thing I'm left wondering is why starting the program in ways that I would mentally classify as exactly the same turned out to differ in such a way. Would appreciate if you could shed some light on that. Thanks, Marijn -BEGIN PGP SIGNATURE- Version: GnuPG v2.0.18 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk5ttKsACgkQp/VmCx0OL2xo+wCgxTQiEkn7+o4q+KM8//3Wnhlq 2woAoKg/mwc3nFj8doocwwp7IMW24i0c =qo0A -END PGP SIGNATURE- _ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev
Re: [racket-dev] weird (memory?) bug using (dis)similar require mechanisms
At Fri, 09 Sep 2011 12:29:13 +0200, Marijn wrote: this racket bug was discovered when I was trying out geiser which starts programs in a way that exposes this bug. The program starts correctly but none of the buttons work (or only reserve screen space) and it is hard to terminate the program. I think this is now fixed. For me, the GUI worked until I clicked a button that needed to grow the frame, at which point it got stuck due to competing callbacks with different opinions on the frame height. (One of those callbacks was wrong.) Although it's not directly related, I also changed the way `on-size' and `on-move' callbacks are queued to put them at the right priority. I think that change will solve the problem that Neil has long reported, where DrRacket would take a long time to catch up if you dragged a resize border around a lot. _ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev
[racket-dev] weird (memory?) bug using (dis)similar require mechanisms
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Hi list, this racket bug was discovered when I was trying out geiser which starts programs in a way that exposes this bug. The program starts correctly but none of the buttons work (or only reserve screen space) and it is hard to terminate the program. I got the impression that a lot of memory was being allocated in a loop. The bug manifests itself when starting racket from the command line and copying into the resulting repl (require ./test1.rkt). But doing either of: $ racket -e '(require ./test1.rkt)' $ racket '(require ./test1.rkt)' works fine. Test program to exhibit the bug: #lang racket/gui (define f (new frame% [label List Editor])) (define items (new vertical-pane% (parent f))) (define (create-item val parent) (define v (new vertical-panel% (parent parent))) (define ins (new button% (parent v) (label insert) (callback (λ (b e) (create-item 0 items))) )) (define h (new horizontal-pane% (parent v))) (define t (new text-field% (parent h) (label ) (init-value val))) (define del (new button% (parent h) (label del) (callback (λ (b e) (send parent delete-child v))) )) v) (for-each (λ (v) (create-item v items)) '(1 2 3)) (new button% (parent f) (label append) (callback (λ (b e) (create-item 0 items (send f show #t) Marijn -BEGIN PGP SIGNATURE- Version: GnuPG v2.0.18 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk5p6nkACgkQp/VmCx0OL2zqKACeK7P3FAQFTZ1aEd+O+X+/wWWA QtAAoKgi7zNggcdW8zLC0+YXpmX6l4Bh =yfHI -END PGP SIGNATURE- _ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev