Changeset: 3b744dd59e15 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/3b744dd59e15
Modified Files:
monetdb5/modules/atoms/str.c
monetdb5/modules/kernel/batstr.c
monetdb5/modules/mal/clients.c
monetdb5/modules/mal/txtsim.c
monetdb5/optimizer/opt_evaluate.c
monetdb5/optimizer/opt_multiplex.c
Branch: Jun2023
Log Message:
Various small fixes.
diffs (160 lines):
diff --git a/monetdb5/modules/atoms/str.c b/monetdb5/modules/atoms/str.c
--- a/monetdb5/modules/atoms/str.c
+++ b/monetdb5/modules/atoms/str.c
@@ -5062,8 +5062,10 @@ STRasciify(str *r, const str *s)
if ((cd = iconv_open(t, f)) == (iconv_t) (-1))
throw(MAL, "str.asciify", "ICONV: cannot convert from (%s) to
(%s).", f,
t);
- if ((*r = out = GDKmalloc(out_len)) == NULL)
+ if ((*r = out = GDKmalloc(out_len)) == NULL) {
+ iconv_close(cd);
throw(MAL, "str.asciify", SQLSTATE(HY013) MAL_MALLOC_FAIL);
+ }
str o = out;
if (iconv(cd, &in, &in_len, &o, &out_len) == (size_t) -1) {
GDKfree(out);
diff --git a/monetdb5/modules/kernel/batstr.c b/monetdb5/modules/kernel/batstr.c
--- a/monetdb5/modules/kernel/batstr.c
+++ b/monetdb5/modules/kernel/batstr.c
@@ -5724,15 +5724,21 @@ BATSTRasciify(Client cntxt, MalBlkPtr mb
throw(MAL, "batstr.asciify", "ICONV: cannot convert from (%s)
to (%s).",
f, t);
- if (!(b = BATdescriptor(*bid)))
+ if (!(b = BATdescriptor(*bid))) {
+ iconv_close(cd);
throw(MAL, "batstr.asciify", RUNTIME_OBJECT_MISSING);
-
- if (sid && !is_bat_nil(*sid) && !(bs = BATdescriptor(*sid)))
+ }
+
+ if (sid && !is_bat_nil(*sid) && !(bs = BATdescriptor(*sid))) {
+ iconv_close(cd);
+ BBPreclaim(b);
throw(MAL, "batstr.asciify", SQLSTATE(HY002)
RUNTIME_OBJECT_MISSING);
+ }
canditer_init(&ci, b, bs);
if ((bn = COLnew(ci.hseq, TYPE_str, ci.ncand, TRANSIENT)) == NULL) {
+ iconv_close(cd);
BBPreclaim(b);
BBPreclaim(bs);
throw(MAL, "batstr.asciify", GDK_EXCEPTION);
diff --git a/monetdb5/modules/mal/clients.c b/monetdb5/modules/mal/clients.c
--- a/monetdb5/modules/mal/clients.c
+++ b/monetdb5/modules/mal/clients.c
@@ -718,34 +718,24 @@ static str
CLTgetPasswordHash(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
{
(void) cntxt;
- str *ret = getArgReference_str(stk, pci, 0);
- str *user = getArgReference_str(stk, pci, 1);
- (void) ret;
- (void) user;
+ (void) mb;
+ (void) stk;
+ (void) pci;
- (void) mb;
-
- throw(MAL, "clients.getPassword needs reimplementation",
- SQLSTATE(HY013) MAL_MALLOC_FAIL);
+ throw(MAL, "clients.getPassword",
+ SQLSTATE(0A000) PROGRAM_NYI);
}
static str
CLTcheckPermission(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci)
{
(void) cntxt;
- //str *usr = getArgReference_str(stk, pci, 1);
- str *pw = getArgReference_str(stk, pci, 2);
- //str algo = "SHA1";
- str pwd, msg;
-
(void) mb;
+ (void) stk;
+ (void) pci;
- if (!(pwd = mcrypt_SHA1Sum(*pw, strlen(*pw))))
- throw(MAL, "clients.checkPermission", SQLSTATE(HY013)
MAL_MALLOC_FAIL);
- throw(MAL, "clients.checkPermission needs reimplementation",
- SQLSTATE(HY013) MAL_MALLOC_FAIL);
- free(pwd);
- return msg;
+ throw(MAL, "clients.checkPermission",
+ SQLSTATE(0A000) PROGRAM_NYI);
}
str
diff --git a/monetdb5/modules/mal/txtsim.c b/monetdb5/modules/mal/txtsim.c
--- a/monetdb5/modules/mal/txtsim.c
+++ b/monetdb5/modules/mal/txtsim.c
@@ -999,10 +999,12 @@ minjarowinklerjoin(BAT **r1, BAT **r2, B
*r2 = r2t;
exit:
- for (n = 0; n < lci.ncand; n++)
- GDKfree(ssl[n].cp_sequence);
- for (n = 0; n < rci.ncand; n++)
- GDKfree(ssr[n].cp_sequence);
+ if (ssl)
+ for (n = 0; n < lci.ncand; n++)
+ GDKfree(ssl[n].cp_sequence);
+ if (ssr)
+ for (n = 0; n < rci.ncand; n++)
+ GDKfree(ssr[n].cp_sequence);
GDKfree(x_flags);
GDKfree(y_flags);
GDKfree(ssl);
diff --git a/monetdb5/optimizer/opt_evaluate.c
b/monetdb5/optimizer/opt_evaluate.c
--- a/monetdb5/optimizer/opt_evaluate.c
+++ b/monetdb5/optimizer/opt_evaluate.c
@@ -183,6 +183,7 @@ OPTevaluateImplementation(Client cntxt,
if (!env) {
msg = createException(MAL,
"optimizer.evaluate",
SQLSTATE(HY013) MAL_MALLOC_FAIL);
+ p->barrier = barrier;
goto wrapup;
}
env->keepAlive = TRUE;
diff --git a/monetdb5/optimizer/opt_multiplex.c
b/monetdb5/optimizer/opt_multiplex.c
--- a/monetdb5/optimizer/opt_multiplex.c
+++ b/monetdb5/optimizer/opt_multiplex.c
@@ -129,7 +129,7 @@ OPTexpandMultiplex(Client cntxt, MalBlkP
getArg(q, 0) = hvar;
tvar = newTmpVariable(mb, TYPE_any);
q = pushReturn(mb, q, tvar);
- (void) pushArgument(mb, q, iter);
+ q = pushArgument(mb, q, iter);
pushInstruction(mb, q);
/* $1:= algebra.fetch(Ai,h) or constant */
@@ -196,7 +196,7 @@ OPTexpandMultiplex(Client cntxt, MalBlkP
q->barrier = REDOsymbol;
getArg(q, 0) = hvar;
q = pushReturn(mb, q, tvar);
- (void) pushArgument(mb, q, iter);
+ q = pushArgument(mb, q, iter);
pushInstruction(mb, q);
q = newAssignment(mb);
@@ -205,7 +205,7 @@ OPTexpandMultiplex(Client cntxt, MalBlkP
}
q->barrier = EXITsymbol;
getArg(q, 0) = hvar;
- (void) pushReturn(mb, q, tvar);
+ q = pushReturn(mb, q, tvar);
pushInstruction(mb, q);
for (i = 0; i < pci->retc; i++) {
@@ -214,7 +214,7 @@ OPTexpandMultiplex(Client cntxt, MalBlkP
goto nomem;
}
getArg(q, 0) = getArg(pci, i);
- (void) pushArgument(mb, q, resB[i]);
+ q = pushArgument(mb, q, resB[i]);
pushInstruction(mb, q);
}
GDKfree(alias);
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]