From 1e6879dbdb0832427f5c588c89a53a8a80768a00 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Thu, 25 Dec 2014 04:19:17 -0800 Subject: Prefer stpcpy to strcat * admin/merge-gnulib (GNULIB_MODULES): Add stpcpy. * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate. * lib/stpcpy.c, m4/stpcpy.m4: New files, from gnulib. * lib-src/ebrowse.c (sym_scope_1, operator_name, open_file): * lib-src/emacsclient.c (get_server_config, set_local_socket) (start_daemon_and_retry_set_socket): * lib-src/etags.c (main, C_entries, relative_filename): * lib-src/pop.c (sendline): * lib-src/update-game-score.c (main): * lwlib/xlwmenu.c (resource_widget_value): * src/callproc.c (child_setup): * src/dbusbind.c (xd_signature_cat): * src/doc.c (get_doc_string, Fsnarf_documentation): * src/editfns.c (Fuser_full_name): * src/frame.c (xrdb_get_resource): * src/gtkutil.c (xg_get_file_with_chooser): * src/tparam.c (tparam1): * src/xfns.c (xic_create_fontsetname): * src/xrdb.c (gethomedir, get_user_db, get_environ_db): * src/xsmfns.c (smc_save_yourself_CB): Rewrite to avoid the need for strcat, typically by using stpcpy and/or lispstpcpy. strcat tends to be part of O(N**2) algorithms. * src/doc.c (sibling_etc): * src/xrdb.c (xdefaults): Now a top-level static constant. --- lwlib/xlwmenu.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'lwlib') diff --git a/lwlib/xlwmenu.c b/lwlib/xlwmenu.c index 6f4db562e0..2d2d409380 100644 --- a/lwlib/xlwmenu.c +++ b/lwlib/xlwmenu.c @@ -439,10 +439,9 @@ resource_widget_value (XlwMenuWidget mw, widget_value *val) int complete_length = strlen (resourced_name) + strlen (val->value) + 2; complete_name = XtMalloc (complete_length); - *complete_name = 0; - strcat (complete_name, resourced_name); - strcat (complete_name, " "); - strcat (complete_name, val->value); + char *z = stpcpy (complete_name, resourced_name); + *z++ = ' '; + strcpy (z, val->value); } val->toolkit_data = complete_name; -- cgit v1.2.3