Changeset: 34747c9d31c1 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=34747c9d31c1
Modified Files:
        gdk/gdk_logger.c
        gdk/gdk_value.c
        geom/monetdb5/geom.c
        monetdb5/mal/mal_builder.c
        monetdb5/modules/atoms/blob.c
        monetdb5/modules/atoms/inet.c
        monetdb5/modules/atoms/uuid.c
        monetdb5/modules/atoms/xml.c
        monetdb5/modules/mal/calc.c
        monetdb5/modules/mal/tablet.c
        monetdb5/modules/mal/txtsim.c
        monetdb5/optimizer/opt_mergetable.c
        sql/backends/monet5/UDF/pyapi/emit.c
        sql/backends/monet5/mal_backend.c
        sql/backends/monet5/rel_bin.c
        sql/backends/monet5/sql.c
        sql/backends/monet5/sql_execute.c
        sql/backends/monet5/sql_gencode.c
        sql/backends/monet5/sql_scenario.c
        sql/backends/monet5/sql_statement.c
        sql/backends/monet5/sql_statistics.c
        sql/backends/monet5/sql_upgrades.c
        sql/backends/monet5/vaults/fits/fits.c
        sql/backends/monet5/vaults/netcdf/netcdf.c
        sql/common/sql_keyword.c
        sql/common/sql_mem.c
        sql/common/sql_string.c
        sql/server/rel_updates.c
        sql/server/sql_atom.c
        sql/server/sql_mvc.c
        sql/server/sql_qc.c
        sql/server/sql_scan.c
        sql/storage/bat/bat_table.c
        sql/storage/bat/res_table.c
        sql/storage/store.c
        sql/storage/store_sequence.c
        tools/mserver/mserver5.c
Branch: default
Log Message:

Added markers to invocations of GDKmalloc and friends where return value is not 
checked. (//FIXME unchecked_malloc ...)


diffs (truncated from 803 to 300 lines):

diff --git a/gdk/gdk_logger.c b/gdk/gdk_logger.c
--- a/gdk/gdk_logger.c
+++ b/gdk/gdk_logger.c
@@ -345,7 +345,10 @@ log_read_updates(logger *lg, trans *tr, 
                if (tt < TYPE_str)
                        tv = lg->buf;
                else if (tt > TYPE_str)
+                       // FIXME unchecked_malloc ATOMnil can return NULL
+
                        tv = ATOMnil(tt);
+
                assert(l->nr <= (lng) BUN_MAX);
                if (l->flag == LOG_UPDATE) {
                        uid = COLnew(0, ht, (BUN) l->nr, PERSISTENT);
@@ -372,6 +375,8 @@ log_read_updates(logger *lg, trans *tr, 
                        }
                } else {
                        void *(*rh) (ptr, stream *, size_t) = ht == TYPE_void ? 
BATatoms[TYPE_oid].atomRead : BATatoms[ht].atomRead;
+                       // FIXME unchecked_malloc ATOMnil can return NULL
+
                        void *hv = ATOMnil(ht);
 
                        for (; l->nr > 0; l->nr--) {
diff --git a/gdk/gdk_value.c b/gdk/gdk_value.c
--- a/gdk/gdk_value.c
+++ b/gdk/gdk_value.c
@@ -143,6 +143,7 @@ VALcopy(ValPtr d, const ValRecord *s)
        if (!ATOMextern(s->vtype)) {
                *d = *s;
        } else if (s->val.pval == 0) {
+               // FIXME unchecked_malloc ATOMnil can return NULL
                d->val.pval = ATOMnil(s->vtype);
                d->vtype = s->vtype;
        } else if (s->vtype == TYPE_str) {
diff --git a/geom/monetdb5/geom.c b/geom/monetdb5/geom.c
--- a/geom/monetdb5/geom.c
+++ b/geom/monetdb5/geom.c
@@ -1745,7 +1745,7 @@ dumpPointsPoint(BAT *idBAT, BAT *geomBAT
        str err = MAL_SUCCEED;
 
        (*lvl)++;
-
+       // FIXME unchecked_malloc GDKmalloc can return NULL
        newPath = GDKmalloc(pathLength + lvlDigitsNum + 1);
        sprintf(newPath, "%s%u", path, *lvl);
 
@@ -1805,7 +1805,7 @@ dumpPointsPolygon(BAT *idBAT, BAT *geomB
                throw(MAL, "geom.DumpPoints", "GEOSGetExteriorRing failed");
 
        (*lvl)++;
-
+       // FIXME unchecked_malloc GDKmalloc can return NULL
        newPath = GDKmalloc(pathLength + lvlDigitsNum + extraLength + 1);
        sprintf(newPath, "%s%u%s", path, *lvl, extraStr);
 
@@ -1858,6 +1858,7 @@ dumpPointsMultiGeometry(BAT *idBAT, BAT 
                multiGeometry = GEOSGetGeometryN(geosGeometry, i);
                lvl++;
 
+               // FIXME unchecked_malloc GDKmalloc can return NULL
                newPath = GDKmalloc(pathLength + lvlDigitsNum + extraLength + 
1);
                sprintf(newPath, "%s%u%s", path, lvl, extraStr);
 
@@ -2165,6 +2166,7 @@ wkbFROMSTR_withSRID(char *geomWKT, int *
        if (strncasecmp(geomWKT, polyhedralSurface, strlen(polyhedralSurface)) 
== 0) {
                size_t sizeOfInfo = strlen(geomWKT) - strlen(polyhedralSurface);
                geomWKT_original = geomWKT;
+               // FIXME unchecked_malloc GDKmalloc can return NULL
                geomWKT = GDKmalloc(sizeOfInfo + strlen(multiPolygon) + 1);
                strcpy(geomWKT, multiPolygon);
                memcpy(geomWKT + strlen(multiPolygon), 
&geomWKT_original[strlen(polyhedralSurface)], sizeOfInfo);
@@ -2219,7 +2221,7 @@ wkbaFROMSTR_withSRID(char *fromStr, int 
        //read the number of items from the beginning of the string
        memcpy(&items, fromStr, sizeof(int));
        skipBytes += sizeof(int);
-
+       // FIXME unchecked_malloc GDKmalloc can return NULL
        *toArray = GDKmalloc(wkba_size(items));
 
        for (i = 0; i < items; i++) {
@@ -5056,6 +5058,7 @@ wkbTOSTR(char **geomWKT, int *len, wkb *
                if (*len < (int) dstStrLen + 1) {
                        *len = (int) dstStrLen + 1;
                        GDKfree(*geomWKT);
+                       // FIXME unchecked_malloc GDKmalloc can return NULL
                        *geomWKT = GDKmalloc(*len);
                }
                snprintf(*geomWKT, *len, "\"%s\"", wkt);
@@ -5221,6 +5224,7 @@ mbrTOSTR(char **dst, int *len, mbr *atom
 
        if (*len < (int) dstStrLen + 1 || *dst == NULL) {
                GDKfree(*dst);
+               // FIXME unchecked_malloc GDKmalloc can return NULL
                *dst = GDKmalloc(*len = (int) dstStrLen + 1);
        }
 
@@ -5262,6 +5266,7 @@ mbrFROMSTR(char *src, int *len, mbr **at
        if (*len < (int) sizeof(mbr)) {
                if (*atom)
                        GDKfree(*atom);
+               // FIXME unchecked_malloc GDKmalloc can return NULL
                *atom = GDKmalloc(*len = sizeof(mbr));
        }
        if (nil) {
@@ -5388,6 +5393,7 @@ wkbaTOSTR(char **toStr, int *len, wkba *
        size_t dataSize;        //, skipBytes=0;
        char **partialStrs;
        char *nilStr = "nil";
+       // FIXME unchecked_malloc GDKmalloc can return NULL
        char *toStrPtr = NULL, *itemsNumStr = GDKmalloc((itemsNumDigits + 1) * 
sizeof(char));
 
        sprintf(itemsNumStr, "%d", items);
@@ -5407,6 +5413,7 @@ wkbaTOSTR(char **toStr, int *len, wkba *
                        GDKfree(partialStrs);
                        if (*len < 4 || *toStr == NULL) {
                                GDKfree(*toStr);
+                               // FIXME unchecked_malloc GDKmalloc can return 
NULL
                                *toStr = GDKmalloc(*len = 4);
                        }
                        strcpy(*toStr, "nil");
@@ -5771,6 +5778,7 @@ wkbContains_point_bat(bat *out, wkb **a,
 
        /*Lets get the polygon */
        token = strtok_r(token, ")", &saveptr1);
+       // FIXME unchecked_malloc GDKmalloc can return NULL
        vert_x = GDKmalloc(POLY_NUM_VERT * sizeof(double));
        vert_y = GDKmalloc(POLY_NUM_VERT * sizeof(double));
 
diff --git a/monetdb5/mal/mal_builder.c b/monetdb5/mal/mal_builder.c
--- a/monetdb5/mal/mal_builder.c
+++ b/monetdb5/mal/mal_builder.c
@@ -520,6 +520,7 @@ pushNil(MalBlkPtr mb, InstrPtr q, int tp
                        cst.vtype=TYPE_void;
                        cst.val.oval= oid_nil;
                } else if (ATOMextern(tpe)) {
+                       // FIXME unchecked_malloc ATOMnil can return NULL
                        ptr p = ATOMnil(tpe);
                        VALset(&cst, tpe, p);
                } else {
diff --git a/monetdb5/modules/atoms/blob.c b/monetdb5/modules/atoms/blob.c
--- a/monetdb5/modules/atoms/blob.c
+++ b/monetdb5/modules/atoms/blob.c
@@ -577,6 +577,8 @@ BLOBblob_blob(blob **d, blob **s)
        blob *b;
 
        if( (*s)->nitems == ~(size_t) 0){
+               // FIXME unchecked_malloc BLOBnull can return NULL
+
                *d= BLOBnull();
        } else {
                *d= b= (blob *) GDKmalloc(len);
diff --git a/monetdb5/modules/atoms/inet.c b/monetdb5/modules/atoms/inet.c
--- a/monetdb5/modules/atoms/inet.c
+++ b/monetdb5/modules/atoms/inet.c
@@ -752,7 +752,7 @@ INETabbrev(str *retval, const inet *val)
                 * &:    00 00 00 00
                 * all zero, thus no bits on the right side of the mask
                 */
-
+               // FIXME unchecked_malloc GDKmalloc can return NULL
                ip = GDKmalloc(sizeof(char) * 19);
 
                if (msk > 24) {
diff --git a/monetdb5/modules/atoms/uuid.c b/monetdb5/modules/atoms/uuid.c
--- a/monetdb5/modules/atoms/uuid.c
+++ b/monetdb5/modules/atoms/uuid.c
@@ -173,6 +173,7 @@ UUIDgenerateUuid(uuid **retval)
        int i = 0, r = 0;
 
        if (*retval == NULL)
+               // FIXME unchecked_malloc GDKmalloc can return NULL
                *retval = GDKmalloc(UUID_SIZE);
        u = *retval;
 #ifdef HAVE_UUID
diff --git a/monetdb5/modules/atoms/xml.c b/monetdb5/modules/atoms/xml.c
--- a/monetdb5/modules/atoms/xml.c
+++ b/monetdb5/modules/atoms/xml.c
@@ -668,6 +668,7 @@ XMLtoString(str *s, int *len, xml src)
        l = (int) strlen(src) + 1;
        if (l >= *len) {
                GDKfree(*s);
+               // FIXME unchecked_malloc GDKmalloc can return NULL
                *s = (str) GDKmalloc(l);
        }
        strcpy(*s, src);
diff --git a/monetdb5/modules/mal/calc.c b/monetdb5/modules/mal/calc.c
--- a/monetdb5/modules/mal/calc.c
+++ b/monetdb5/modules/mal/calc.c
@@ -632,6 +632,7 @@ CALCswitchbit(Client cntxt, MalBlkPtr mb
                p = getArgReference(stk, pci, 3);
        }
        if (ATOMextern(t1)) {
+               // FIXME unchecked_malloc ATOMdup could return NULL
                *(ptr **) retval = ATOMdup(t1, *(ptr**)p);
        } else if (t1 == TYPE_void) {
                memcpy(retval, p, sizeof(oid));
diff --git a/monetdb5/modules/mal/tablet.c b/monetdb5/modules/mal/tablet.c
--- a/monetdb5/modules/mal/tablet.c
+++ b/monetdb5/modules/mal/tablet.c
@@ -903,6 +903,7 @@ SQLinsert_val(READERtask *task, int col,
                if (task->rowerror) {
                        if (s) {
                                size_t slen = mystrlen(s);
+                               // FIXME unchecked_malloc GDKmalloc can return 
NULL, and asserts are not the way to check the result
                                char *scpy = GDKmalloc(slen + 1);
                                assert(scpy);
                                if (scpy)
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
@@ -27,6 +27,7 @@
        if (b) {\
           if (ATOMextern(t)) {\
              *(ptr*) res = (ptr) ATOMnil(t);\
+               // FIXME unchecked_malloc ATOMnil can return NULL \
           } else {\
              memcpy(res, ATOMnilptr(t), ATOMsize(t));\
           }\
@@ -308,7 +309,7 @@ CMDqgramnormalize(str *res, str *Input)
        char c, last = ' ';
 
        RETURN_NIL_IF(strNil(input), TYPE_str);
-
+       // FIXME unchecked_malloc GDKmalloc can return NULL
        *res = (str) GDKmalloc(sizeof(char) * (strlen(input) + 1));     /* 
normalized strings are never longer than original */
 
        for (i = 0; input[i]; i++) {
diff --git a/monetdb5/optimizer/opt_mergetable.c 
b/monetdb5/optimizer/opt_mergetable.c
--- a/monetdb5/optimizer/opt_mergetable.c
+++ b/monetdb5/optimizer/opt_mergetable.c
@@ -396,7 +396,7 @@ mat_apply2(matlist_t *ml, MalBlkPtr mb, 
 {
        int k, is_select = isSelect(p);
        InstrPtr *r = NULL;
-
+       // FIXME unchecked_malloc GDKmalloc can return NULL
        r = (InstrPtr*) GDKmalloc(sizeof(InstrPtr)* p->retc);
        for(k=0; k < p->retc; k++) {
                r[k] = newInstruction(mb, matRef, packRef);
@@ -435,7 +435,7 @@ mat_apply3(MalBlkPtr mb, InstrPtr p, mat
 {
        int k;
        InstrPtr *r = NULL;
-
+       // FIXME unchecked_malloc GDKmalloc can return NULL
        r = (InstrPtr*) GDKmalloc(sizeof(InstrPtr)* p->retc);
        for(k=0; k < p->retc; k++) {
                r[k] = newInstruction(mb, matRef, packRef);
diff --git a/sql/backends/monet5/UDF/pyapi/emit.c 
b/sql/backends/monet5/UDF/pyapi/emit.c
--- a/sql/backends/monet5/UDF/pyapi/emit.c
+++ b/sql/backends/monet5/UDF/pyapi/emit.c
@@ -113,6 +113,7 @@ PyEmit_Emit(PyEmitObject *self, PyObject
         if (potential_size > self->maxcols) {
             // allocate space for new columns (if any new columns show up)
             sql_emit_col *old = self->cols;
+               // FIXME unchecked_malloc GDKmalloc can return NULL
             self->cols = GDKmalloc(sizeof(sql_emit_col) * potential_size);
             if (old) {
                 memcpy(self->cols, old, sizeof(sql_emit_col) * self->maxcols);
@@ -162,6 +163,7 @@ PyEmit_Emit(PyEmitObject *self, PyObject
                 if (self->nvals > 0) {
                     // insert NULL values up until the current entry
                     for (ai = 0; ai < self->nvals; ai++) {
+                               // FIXME unchecked_malloc ATOMnil can return 
NULL
                         BUNappend(self->cols[self->ncols].b, 
ATOMnil(self->cols[self->ncols].b->ttype), 0);
                     }
                     self->cols[i].b->tnil = 1;
diff --git a/sql/backends/monet5/mal_backend.c 
b/sql/backends/monet5/mal_backend.c
--- a/sql/backends/monet5/mal_backend.c
+++ b/sql/backends/monet5/mal_backend.c
@@ -27,6 +27,7 @@ backend_reset(backend *b)
 backend *
 backend_create(mvc *m, Client c)
 {
+       // FIXME unchecked_malloc MNEW can return NULL
        backend *b = MNEW(backend);
 
        b->console = isAdministrator(c);
diff --git a/sql/backends/monet5/rel_bin.c b/sql/backends/monet5/rel_bin.c
--- a/sql/backends/monet5/rel_bin.c
+++ b/sql/backends/monet5/rel_bin.c
@@ -1031,7 +1031,7 @@ rel_parse_value(backend *be, char *query
 
        m->caching = 0;
        m->emode = emode;
-
+       // FIXME unchecked_malloc GDKmalloc can return NULL
        b = (buffer*)GDKmalloc(sizeof(buffer));
        n = GDKmalloc(len + 1 + 1);
        strncpy(n, query, len);
diff --git a/sql/backends/monet5/sql.c b/sql/backends/monet5/sql.c
--- a/sql/backends/monet5/sql.c
+++ b/sql/backends/monet5/sql.c
@@ -1849,15 +1849,19 @@ mvc_export_table_wrap( Client cntxt, Mal
        }
 
        l = strlen((char *) (*T));
+       // FIXME unchecked_malloc GDKmalloc can return NULL
        GDKstrFromStr(tsep = GDKmalloc(l + 1), *T, l);
        l = 0;
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to