From 6ed440b753dcad6ac666125768bd981651d775a1 Mon Sep 17 00:00:00 2001 From: Arnaud Giersch Date: Thu, 3 Nov 2011 16:35:00 +0100 Subject: [PATCH] Fix warnings about clobbered variables in gras/mmrpc example. --- examples/gras/mmrpc/mmrpc_client.c | 31 ++++++++++++++++-------------- examples/gras/mmrpc/mmrpc_server.c | 19 ++++++++++++------ 2 files changed, 30 insertions(+), 20 deletions(-) diff --git a/examples/gras/mmrpc/mmrpc_client.c b/examples/gras/mmrpc/mmrpc_client.c index 4719e1d007..e732804d0a 100644 --- a/examples/gras/mmrpc/mmrpc_client.c +++ b/examples/gras/mmrpc/mmrpc_client.c @@ -12,11 +12,24 @@ XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(MatMult); -int client(int argc, char *argv[]) +static gras_socket_t try_gras_socket_client(const char *host, int port) { + volatile gras_socket_t sock = NULL; xbt_ex_t e; + TRY { + sock = gras_socket_client(host, port); + } + CATCH(e) { + if (e.category != system_error) + RETHROWF("Unable to connect to the server: %s"); + xbt_ex_free(e); + } + return sock; +} + +int client(int argc, char *argv[]) +{ gras_socket_t toserver = NULL; /* peer */ - int connected = 0; gras_socket_t from; xbt_matrix_t request[2], answer; @@ -41,18 +54,8 @@ int client(int argc, char *argv[]) mmrpc_register_messages(); /* 4. Create a socket to speak to the server */ - while (!connected) { - TRY { - toserver = gras_socket_client(host, port); - connected = 1; - } - CATCH(e) { - if (e.category != system_error) - RETHROWF("Unable to connect to the server: %s"); - xbt_ex_free(e); - gras_os_sleep(0.05); - } - } + while (!(toserver = try_gras_socket_client(host, port))) + gras_os_sleep(0.05); XBT_INFO("Connected to %s:%d.", host, port); /* 5. Keep the user informed of what's going on */ diff --git a/examples/gras/mmrpc/mmrpc_server.c b/examples/gras/mmrpc/mmrpc_server.c index bcaf5f1a00..afdb861586 100644 --- a/examples/gras/mmrpc/mmrpc_server.c +++ b/examples/gras/mmrpc/mmrpc_server.c @@ -38,6 +38,18 @@ static int server_cb_request_handler(gras_msg_cb_ctx_t ctx, return 0; } /* end_of_server_cb_request_handler */ +static gras_socket_t try_gras_socket_server(int port) +{ + volatile gras_socket_t sock = NULL; + TRY { + sock = gras_socket_server(port); + } + CATCH_ANONYMOUS { + RETHROWF("Unable to establish a server socket: %s"); + } + return sock; +} + int server(int argc, char *argv[]) { gras_socket_t sock = NULL; @@ -59,12 +71,7 @@ int server(int argc, char *argv[]) /* 5. Create my master socket */ XBT_INFO("Launch server (port=%d)", port); - TRY { - sock = gras_socket_server(port); - } - CATCH_ANONYMOUS { - RETHROWF("Unable to establish a server socket: %s"); - } + sock = try_gras_socket_server(port); /* 6. Wait up to 10 minutes for an incomming message to handle */ gras_msg_handle(600.0); -- 2.20.1