From fd81d53e7babb351a37e2c6f91fdfdb817a2cae5 Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Wed, 31 Oct 2012 12:17:24 -0600 Subject: [PATCH] fix error-message code Closes PR 13222 (cherry picked from commit 8f73ebbc36dcb66afa1051889c4e0636f50be5f4) --- collects/tests/racket/udp.rktl | 14 ++++++++++++++ src/racket/src/network.c | 6 ++++-- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/collects/tests/racket/udp.rktl b/collects/tests/racket/udp.rktl index 12c565e3ce..ce4d45331b 100644 --- a/collects/tests/racket/udp.rktl +++ b/collects/tests/racket/udp.rktl @@ -178,3 +178,17 @@ (test w sync w)) (test #t evt? (udp-receive!-evt udp1 us1)) (test #t evt? (udp-send-to-evt udp1 "127.0.0.1" port #"here's more")) + + +;; check that error-repoting doesn't crash: +(let () + (define (q) + (define s (udp-open-socket #f #f)) + (udp-bind! s #f 5999) + s) + + (define s (q)) + (err/rt-test (q) exn:fail:network?) + (udp-close s)) + + diff --git a/src/racket/src/network.c b/src/racket/src/network.c index 446b52a3ca..af10f4736a 100644 --- a/src/racket/src/network.c +++ b/src/racket/src/network.c @@ -3225,7 +3225,8 @@ static Scheme_Object *udp_bind_or_connect(const char *name, int argc, Scheme_Obj " port number: %d\n" " system error: %E", name, - port, address ? address : "#f", + address ? address : "#f", + port, SOCK_ERRNO()); return NULL; } @@ -3257,7 +3258,8 @@ static Scheme_Object *udp_bind_or_connect(const char *name, int argc, Scheme_Obj " port number: %d\n" " system error: %E", name, - port, address ? address : "#f", + address ? address : "#f", + port, SOCK_ERRNO()); return NULL; }