aboutsummaryrefslogtreecommitdiffstats
path: root/lualdap/src/lualdap.c
diff options
context:
space:
mode:
authorTomas Guisasola <tomas@luaforge.net>2005-01-10 05:58:22 +0000
committerTomas Guisasola <tomas@luaforge.net>2005-01-10 05:58:22 +0000
commita9bcf67843e70ad80016180575fce35f27f904b4 (patch)
tree7e96bfc25cb4adb3e9d36345985b5878ab778096 /lualdap/src/lualdap.c
parentRetirada do artigo (The) do link para o Projeto Kepler. (diff)
downloadlualdap-a9bcf67843e70ad80016180575fce35f27f904b4.tar.xz
lualdap-a9bcf67843e70ad80016180575fce35f27f904b4.zip
Pequenas correcoes no tratamento de erros.
Diffstat (limited to 'lualdap/src/lualdap.c')
-rwxr-xr-xlualdap/src/lualdap.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/lualdap/src/lualdap.c b/lualdap/src/lualdap.c
index 7ab4d70..af4170a 100755
--- a/lualdap/src/lualdap.c
+++ b/lualdap/src/lualdap.c
@@ -1,7 +1,7 @@
/*
** LuaLDAP
** See Copyright Notice in license.html
-** $Id: lualdap.c,v 1.35 2004-11-17 14:17:33 tomas Exp $
+** $Id: lualdap.c,v 1.36 2005-01-10 05:58:22 tomas Exp $
*/
#include <stdlib.h>
@@ -385,16 +385,15 @@ static int result_message (lua_State *L) {
rc = ldap_result (conn->ld, msgid, LDAP_MSG_ONE, timeout, &res);
if (rc == 0)
return faildirect (L, LUALDAP_PREFIX"result timeout expired");
- else if (rc == -1)
+ else if (rc < 0) {
+ ldap_msgfree (res);
return faildirect (L, LUALDAP_PREFIX"result error");
- else if (rc != res_code)
- return faildirect (L, ldap_err2string (rc));
- else {
+ } else {
int err, ret = 1;
char *mdn, *msg;
rc = ldap_parse_result (conn->ld, res, &err, &mdn, &msg, NULL, NULL, 1);
if (rc != LDAP_SUCCESS)
- return faildirect (L, ldap_err2string (rc));
+ return faildirect (L, ldap_err2string (err));
switch (err) {
case LDAP_SUCCESS:
case LDAP_COMPARE_TRUE: