Changeset: 1e7785a30bd4 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1e7785a30bd4
Modified Files:
        sql/storage/bat/bat_logger.c
Branch: Jun2020
Log Message:

Merged, sorry again


diffs (44 lines):

diff --git a/sql/storage/bat/bat_logger.c b/sql/storage/bat/bat_logger.c
--- a/sql/storage/bat/bat_logger.c
+++ b/sql/storage/bat/bat_logger.c
@@ -142,29 +142,36 @@ tabins(void *lg, bool first, int tt, con
        while ((cname = va_arg(va, char *)) != NULL) {
                cval = va_arg(va, void *);
                len = snprintf(lname, sizeof(lname), "%s_%s_%s", sname, tname, 
cname);
-               if (len == -1 || (size_t)len >= sizeof(lname))
+               if (len == -1 || (size_t)len >= sizeof(lname) ||
+                       (b = temp_descriptor(logger_find_bat(lg, lname, 0, 0))) 
== NULL) {
+                       va_end(va);
                        return GDK_FAIL;
-               if ((b = temp_descriptor(logger_find_bat(lg, lname, 0, 0))) == 
NULL)
-                       return GDK_FAIL;
+               }
                if (first) {
                        BAT *bn;
                        if ((bn = COLcopy(b, b->ttype, true, PERSISTENT)) == 
NULL) {
                                BBPunfix(b->batCacheid);
+                               va_end(va);
                                return GDK_FAIL;
                        }
                        BBPunfix(b->batCacheid);
                        if (BATsetaccess(bn, BAT_READ) != GDK_SUCCEED ||
                            logger_add_bat(lg, bn, lname, 0, 0) != GDK_SUCCEED) 
{
                                BBPunfix(bn->batCacheid);
+                               va_end(va);
                                return GDK_FAIL;
                        }
                        b = bn;
                }
                rc = BUNappend(b, cval, true);
                BBPunfix(b->batCacheid);
-               if (rc != GDK_SUCCEED)
+               if (rc != GDK_SUCCEED) {
+                       va_end(va);
                        return rc;
+               }
        }
+       va_end(va);
+
        if (tt >= 0) {
                if ((b = COLnew(0, tt, 0, PERSISTENT)) == NULL)
                        return GDK_FAIL;
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to