[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
replace alloca with strdup
From: |
Han Boetes |
Subject: |
replace alloca with strdup |
Date: |
Sat, 21 May 2005 18:30:06 +0200 |
User-agent: |
Mutt/1.5.8i |
Hi,
While looking at some compilerwarnings I found an alloca and an
strcpy. And I realized this can also be done as follows:
Index: xterm.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/xterm.c,v
retrieving revision 1.864
diff -u -p -r1.864 xterm.c
--- xterm.c 10 May 2005 09:19:19 -0000 1.864
+++ xterm.c 21 May 2005 16:23:31 -0000
@@ -7635,8 +7635,9 @@ x_connection_closed (dpy, error_message)
Lisp_Object frame, tail;
int count;
- error_msg = (char *) alloca (strlen (error_message) + 1);
- strcpy (error_msg, error_message);
+ if ((error_msg = strdup(error_message)) == NULL)
+ errx(1, "Out of memory.");
+
handling_signal = 0;
/* Prevent being called recursively because of an error condition
Advantages are:
- simpler code
- strdup is more portable
- error handling
- you don't have to worry about strdup concerning security
I hope you like the idea.
# Han
- replace alloca with strdup,
Han Boetes <=