From d5d409ac7b5792f3962dbe8a7f392d09ce797266 Mon Sep 17 00:00:00 2001 From: Alan Coopersmith Date: Thu, 13 Jan 2011 00:04:32 -0800 Subject: Convert XtMalloc + sprintf to XtAsprintf Depends on libXt > 1.0.99 to ensure XtAsprintf is available. Signed-off-by: Alan Coopersmith --- choose.c | 8 +++----- configure.ac | 2 +- info.c | 5 +---- save.c | 5 +---- xsm.c | 26 ++++++-------------------- 5 files changed, 12 insertions(+), 34 deletions(-) diff --git a/choose.c b/choose.c index c2a0c34..b8cc946 100644 --- a/choose.c +++ b/choose.c @@ -145,6 +145,7 @@ GetSessionNames(int *count_ret, String **short_names_ret, { char *host = ((char *) strchr (id, '/')) + 1; char *colon = (char *) strrchr (host, ':'); + char *lockmsg; /* backtrack over previous colon if there are 2 (DECnet), but not three (IPv6) */ @@ -153,11 +154,8 @@ GetSessionNames(int *count_ret, String **short_names_ret, *colon = '\0'; - (*long_names_ret)[*count_ret] = - XtMalloc (strlen (name) + strlen (host) + 14); - - sprintf ((*long_names_ret)[*count_ret], - "%s (locked at %s)", name, host); + XtAsprintf (&lockmsg, "%s (locked at %s)", name, host); + (*long_names_ret)[*count_ret] = lockmsg; *colon = ':'; XtFree (id); diff --git a/configure.ac b/configure.ac index 9793f6d..228d8be 100644 --- a/configure.ac +++ b/configure.ac @@ -48,7 +48,7 @@ AC_CHECK_FUNC([putenv], [], AC_DEFINE(NOPUTENV,1,[Define to 1 if you DO NOT have the 'putenv' function.])) # Checks for pkg-config packages -PKG_CHECK_MODULES(XSM, x11 xt ice sm xaw7) +PKG_CHECK_MODULES(XSM, [x11 xt > 1.0.99 ice sm xaw7]) xt_appdefaultdir=`$PKG_CONFIG --variable=appdefaultdir xt` AC_ARG_WITH(appdefaultdir, diff --git a/info.c b/info.c index 728bbb3..2c51fd4 100644 --- a/info.c +++ b/info.c @@ -559,9 +559,6 @@ UpdateClientList(void) else hint = ""; - clientInfo = (String) XtMalloc (strlen (progName) + - extra1 + extra2 + 3 + strlen (hostname) + 3 + strlen (hint) + 1); - for (k = 0; k < extra1; k++) extraBuf1[k] = ' '; extraBuf1[extra1] = '\0'; @@ -570,7 +567,7 @@ UpdateClientList(void) extraBuf2[k] = ' '; extraBuf2[extra2] = '\0'; - sprintf (clientInfo, "%s%s (%s%s) %s", progName, extraBuf1, + XtAsprintf (&clientInfo, "%s%s (%s%s) %s", progName, extraBuf1, hostname, extraBuf2, hint); clientListRecs[i] = client; diff --git a/save.c b/save.c index 1c40d72..3cb0c36 100644 --- a/save.c +++ b/save.c @@ -1314,9 +1314,6 @@ PopupBadSave(void) extra1 = maxlen1 - strlen (progName) + 5; extra2 = maxlen2 - strlen (hostname); - clientInfo = (String) XtMalloc (strlen (progName) + - extra1 + extra2 + 3 + strlen (hostname) + 1); - for (k = 0; k < extra1; k++) extraBuf1[k] = ' '; extraBuf1[extra1] = '\0'; @@ -1325,7 +1322,7 @@ PopupBadSave(void) extraBuf2[k] = ' '; extraBuf2[extra2] = '\0'; - sprintf (clientInfo, "%s%s (%s%s)", progName, extraBuf1, + XtAsprintf (&clientInfo, "%s%s (%s%s)", progName, extraBuf1, hostname, extraBuf2); failedNames[i++] = clientInfo; diff --git a/xsm.c b/xsm.c index 1d377bc..4de4075 100644 --- a/xsm.c +++ b/xsm.c @@ -257,9 +257,7 @@ main(int argc, char *argv[]) /* the sizeof includes the \0, so we don't need to count the '=' */ networkIds = IceComposeNetworkIdList (numTransports, listenObjs); - p = (char *) XtMalloc((sizeof environment_name) + strlen(networkIds) + 1); - if(!p) nomem(); - sprintf(p, "%s=%s", environment_name, networkIds); + XtAsprintf(&p, "%s=%s", environment_name, networkIds); putenv(p); if (cmd_line_display) @@ -270,8 +268,7 @@ main(int argc, char *argv[]) * the session manager will run on the specified display. */ - p = (char *) XtMalloc(8 + strlen(cmd_line_display) + 1); - sprintf(p, "DISPLAY=%s", cmd_line_display); + XtAsprintf(&p, "DISPLAY=%s", cmd_line_display); putenv(p); } @@ -428,9 +425,7 @@ GetEnvironment(void) display_env = NULL; if((p = cmd_line_display) || (p = (char *) getenv(envDISPLAY))) { - display_env = (char *) XtMalloc(strlen(envDISPLAY)+1+strlen(p)+1); - if(!display_env) nomem(); - sprintf(display_env, "%s=%s", envDISPLAY, p); + XtAsprintf(&display_env, "%s=%s", envDISPLAY, p); /* * When we restart a remote client, we have to make sure the @@ -457,21 +452,14 @@ GetEnvironment(void) char hostnamebuf[256]; gethostname (hostnamebuf, sizeof hostnamebuf); - non_local_display_env = (char *) XtMalloc ( - strlen (envDISPLAY) + 1 + - strlen (hostnamebuf) + strlen (temp) + 1); - if (!non_local_display_env) nomem(); - sprintf(non_local_display_env, "%s=%s%s", + XtAsprintf(&non_local_display_env, "%s=%s%s", envDISPLAY, hostnamebuf, temp); } } session_env = NULL; if((p = (char *) getenv(envSESSION_MANAGER))) { - session_env = (char *) XtMalloc( - strlen(envSESSION_MANAGER)+1+strlen(p)+1); - if(!session_env) nomem(); - sprintf(session_env, "%s=%s", envSESSION_MANAGER, p); + XtAsprintf(&session_env, "%s=%s", envSESSION_MANAGER, p); /* * When we restart a remote client, we have to make sure the @@ -507,9 +495,7 @@ GetEnvironment(void) audio_env = NULL; if((p = (char *) getenv(envAUDIOSERVER))) { - audio_env = (char *) XtMalloc(strlen(envAUDIOSERVER)+1+strlen(p)+1); - if(!audio_env) nomem(); - sprintf(audio_env, "%s=%s", envAUDIOSERVER, p); + XtAsprintf(&audio_env, "%s=%s", envAUDIOSERVER, p); } } -- cgit v1.2.3