summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2023-04-22 13:56:03 +0200
committerThomas White <taw@physics.org>2023-04-22 13:56:03 +0200
commit09c71fef227fcd1d6a8b4142ceaa0cbe66f1aab7 (patch)
tree5a9ba0f93721d7ce12d02e162d8b204794170af0
parent609a58ed984d71710714ccfc12c3da9a50358ef3 (diff)
Return #f on error
-rw-r--r--guile-osc.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/guile-osc.c b/guile-osc.c
index 5363c53..4174697 100644
--- a/guile-osc.c
+++ b/guile-osc.c
@@ -41,8 +41,12 @@ static SCM make_osc_server_thread(SCM port_obj)
{
const char *port = scm_to_utf8_stringn(port_obj, NULL);
lo_server_thread srv = lo_server_thread_new(port, error_callback);
- lo_server_thread_start(srv);
- return scm_make_foreign_object_1(osc_server_thread_type, srv);
+ if ( srv == NULL ) {
+ return SCM_BOOL_F;
+ } else {
+ lo_server_thread_start(srv);
+ return scm_make_foreign_object_1(osc_server_thread_type, srv);
+ }
}
@@ -61,6 +65,11 @@ static SCM make_osc_address(SCM port_obj)
const char *port = scm_to_utf8_stringn(port_obj, NULL);
addr = lo_address_new(NULL, port);
return scm_make_foreign_object_1(osc_address_type, addr);
+ if ( addr == NULL ) {
+ return SCM_BOOL_F;
+ } else {
+ return scm_make_foreign_object_1(osc_address_type, addr);
+ }
}