gui
gui copied to clipboard
32-bit racket fullscreen error
Running (send frame fullscreen #t) on a 32-bit version of Racket on Windows comes up with this error.
$ racket test.rkt
ptr-set!: given value does not fit primitive C type
C type: _int32
given value: 2147483648
context...:
C:\Program Files (x86)\Racket\collects\ffi\unsafe.rkt:1260:0: cast
C:\Program Files (x86)\Racket\share\pkgs\gui-lib\mred\private\wx\win32\frame.rkt:627:2: fullscreen method in frame%
C:\Program Files (x86)\Racket\collects\ffi\unsafe\atomic.rkt:72:13
C:\Program Files (x86)\Racket\share\pkgs\gui-lib\mred\private\wx\common\queue.rkt:454:6
C:\Program Files (x86)\Racket\share\pkgs\gui-lib\mred\private\wx\common\queue.rkt:505:32
C:\Program Files (x86)\Racket\share\pkgs\gui-lib\mred\private\wx\common\queue.rkt:653:3
The script I used is bare-bones.
#lang racket/base
(require racket/class racket/gui/base)
(define frame
(new frame%
[label "foo"]
[width 100]
[height 100]))
(define fullscreen-button
(new button%
[parent frame]
[label "Toggle Fullscreen"]
[callback (lambda (button evt)
(define fs? (send frame is-fullscreened?))
(send frame fullscreen (not fs?)))]))
(define close-button
(new button%
[parent frame]
[label "Close"]
[callback (lambda (button evt)
(send frame show #f)
(exit))]))
(send frame show #t)
As of version 7.2, this issue persists with this error message:
ptr-set!: given value does not fit primitive C type
C type: _int32
given value: 2147483648
context...: