diff options
author | Andrew Tridgell <tridge@samba.org> | 2005-07-10 02:37:50 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:19:30 -0500 |
commit | 60ec75cbc7dccfceec9c57799e2af5be21a08609 (patch) | |
tree | 2e98a1f002878f63264f3e22b2f4ad46f488ca4d /source4/scripting/ejs/smbcalls.c | |
parent | 1e5b309b4fc15dcc48007d856a954a2bea08b380 (diff) | |
download | samba-60ec75cbc7dccfceec9c57799e2af5be21a08609.tar.gz samba-60ec75cbc7dccfceec9c57799e2af5be21a08609.tar.bz2 samba-60ec75cbc7dccfceec9c57799e2af5be21a08609.zip |
r8276: fixed the remaining memory leaks in smbscript. We can now loop doing
lots of rpc calls without memory usage increasing.
(This used to be commit 9c885a7edb771486793eb287288158157b34e8f3)
Diffstat (limited to 'source4/scripting/ejs/smbcalls.c')
-rw-r--r-- | source4/scripting/ejs/smbcalls.c | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/source4/scripting/ejs/smbcalls.c b/source4/scripting/ejs/smbcalls.c index d8bb0c20a5..75702e4e76 100644 --- a/source4/scripting/ejs/smbcalls.c +++ b/source4/scripting/ejs/smbcalls.c @@ -24,6 +24,7 @@ #include "includes.h" #include "lib/ejs/ejs.h" #include "auth/auth.h" +#include "scripting/ejs/smbcalls.h" /* return the type of a variable @@ -60,16 +61,16 @@ static int ejs_typeof(MprVarHandle eid, int argc, struct MprVar **argv) } if (type == NULL) return -1; - ejsSetReturnString(eid, type); + mpr_ReturnString(eid, type); return 0; } /* setup a return of a string list */ - void ejs_returnlist(MprVarHandle eid, const char *name, const char **list) +void ejs_returnlist(int eid, const char *name, const char **list) { - ejsSetReturnValue(eid, mprList(name, list)); + mpr_Return(eid, mprList(name, list)); } static int ejs_systemAuth(TALLOC_CTX *tmp_ctx, struct MprVar *auth, const char *username, const char *password, const char *domain, const char *remote_host) @@ -158,7 +159,7 @@ static int ejs_userAuth(MprVarHandle eid, int argc, struct MprVar **argv) mprSetPropertyValue(&auth, "report", mprCreateStringVar("Unknown Domain", 1)); } - ejsSetReturnValue(eid, auth); + mpr_Return(eid, auth); talloc_free(tmp_ctx); return 0; } @@ -166,7 +167,6 @@ static int ejs_userAuth(MprVarHandle eid, int argc, struct MprVar **argv) static int ejs_domain_list(MprVarHandle eid, int argc, char **argv) { struct MprVar list; - struct MprVar dom; if (argc != 0) { ejsSetErrorMsg(eid, "domList invalid arguments"); @@ -174,10 +174,9 @@ static int ejs_domain_list(MprVarHandle eid, int argc, char **argv) } list = mprCreateObjVar("list", MPR_DEFAULT_HASH_SIZE); - dom = mprCreateStringVar("System User", 1); - mprCreateProperty(&list, "0", &dom); + mprSetVar(&list, "0", mprCreateStringVar("System User", 1)); - ejsSetReturnValue(eid, list); + mpr_Return(eid, list); return 0; } |