* callproc.c (child_setup): Rewrite to avoid two strlen calls.
authorPaul Eggert <eggert@cs.ucla.edu>
Sun, 19 Jun 2011 18:40:02 +0000 (11:40 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Sun, 19 Jun 2011 18:40:02 +0000 (11:40 -0700)
src/ChangeLog
src/callproc.c

index b843dfc..bcf40a4 100644 (file)
@@ -1,5 +1,7 @@
 2011-06-19  Paul Eggert  <eggert@cs.ucla.edu>
 
+       * callproc.c (child_setup): Rewrite to avoid two strlen calls.
+
        * process.c (Fformat_network_address): Use EMACS_INT, not EMACS_UINT.
        We prefer signed integers, even for size calculations.
 
index fae47b7..12621c9 100644 (file)
@@ -1230,8 +1230,7 @@ child_setup (int in, int out, int err, register char **new_argv, int set_pgrp, L
 
     if (STRINGP (display))
       {
-       int vlen = strlen ("DISPLAY=") + strlen (SSDATA (display)) + 1;
-       char *vdata = (char *) alloca (vlen);
+       char *vdata = (char *) alloca (sizeof "DISPLAY=" + SBYTES (display));
        strcpy (vdata, "DISPLAY=");
        strcat (vdata, SSDATA (display));
        new_env = add_env (env, new_env, vdata);