diff --git a/racket/src/io/error/main.rkt b/racket/src/io/error/main.rkt index 25357e0ad5..9820350528 100644 --- a/racket/src/io/error/main.rkt +++ b/racket/src/io/error/main.rkt @@ -51,7 +51,7 @@ ;; Install the default error-value->string handler, ;; replacing the non-working primitive placeholder -(void +(define (install-error-value->string-handler!) (error-value->string-handler (lambda (v len) (unless (exact-nonnegative-integer? len) @@ -61,3 +61,8 @@ (define o (open-output-string)) (do-global-print 'default-error-value->string-handler v o 0 len) (get-output-string o)))) + +(void (install-error-value->string-handler!)) + +(module+ place-init + (provide install-error-value->string-handler!)) diff --git a/racket/src/io/main.rkt b/racket/src/io/main.rkt index 82c44a9052..245e555739 100644 --- a/racket/src/io/main.rkt +++ b/racket/src/io/main.rkt @@ -26,6 +26,8 @@ "path/system.rkt" (only-in "host/rktio.rkt" rktio-place-init!) + (submod "error/main.rkt" + place-init) "port/place.rkt") (provide (all-from-out "port/main.rkt") @@ -57,6 +59,7 @@ (sandman-place-init!) (rktio-place-init!) (logger-init!) + (install-error-value->string-handler!) (init-current-directory!) (init-current-ports! in-fd out-fd err-fd cust plumber))