summaryrefslogtreecommitdiff
path: root/source4/lib/appweb/ejs-2.0/ejs/ejsVar.c
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2007-07-19 04:00:32 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 15:01:11 -0500
commitf8219ec5a8502975f347323900ff3245ff5222dc (patch)
treeb80a2683164ccf4c7da7188c010abc340fd5f639 /source4/lib/appweb/ejs-2.0/ejs/ejsVar.c
parent3c097f3afb51f41abe2be6a5698dabba559b75fc (diff)
downloadsamba-f8219ec5a8502975f347323900ff3245ff5222dc.tar.gz
samba-f8219ec5a8502975f347323900ff3245ff5222dc.tar.bz2
samba-f8219ec5a8502975f347323900ff3245ff5222dc.zip
r23961: Allow SWAT to operate on x86_64 machines.
On machines with a 4 byte int, and a 8 byte pointer, the ESP could would fail. The problem is that 0 != NULL. 0 is an int (4 bytes) and NULL is a pointer (8), and this matters critically to varargs functions. If a 0 was passed as the 'terminating' argument, then only 4 bytes would be written to the stack, but va_arg(ap, char *) would try and pull 8, reading uninitalised memory. Andrew Bartlett (This used to be commit 72ca8e3b2a45179b731790e6329b978b22ac1ec0)
Diffstat (limited to 'source4/lib/appweb/ejs-2.0/ejs/ejsVar.c')
-rw-r--r--source4/lib/appweb/ejs-2.0/ejs/ejsVar.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/source4/lib/appweb/ejs-2.0/ejs/ejsVar.c b/source4/lib/appweb/ejs-2.0/ejs/ejsVar.c
index 5067215f03..1f8e9266a3 100644
--- a/source4/lib/appweb/ejs-2.0/ejs/ejsVar.c
+++ b/source4/lib/appweb/ejs-2.0/ejs/ejsVar.c
@@ -2590,7 +2590,7 @@ EjsProperty *ejsDefineAccessors(Ejs *ep, EjsVar *vp, const char *prop,
/* MOB -- need to encapsulate this logic */
if (mprAllocStrcat(MPR_LOC_ARGS(ep), &propName, EJS_MAX_ID+5, 0,
- "-set-", prop, 0) < 0) {
+ "-set-", prop, NULL) < 0) {
ejsMemoryError(ep);
return 0;
}
@@ -2633,7 +2633,7 @@ EjsProperty *ejsDefineCAccessors(Ejs *ep, EjsVar *vp, const char *prop,
/* MOB -- OPT to use SLAB */
if (mprAllocStrcat(MPR_LOC_ARGS(ep), &propName, EJS_MAX_ID + 5, 0,
- "-set-", prop, 0) < 0) {
+ "-set-", prop, NULL) < 0) {
ejsMemoryError(ep);
return 0;
}