Changeset: 83b3a98ac237 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=83b3a98ac237
Modified Files:
        configure.ag
        gdk/gdk.h
        monetdb5/extras/rdf/rdf_shredder.c
        tools/merovingian/daemon/client.c
        tools/merovingian/daemon/merovingian.c
Branch: default
Log Message:

Merge with Jan2014 branch.


diffs (191 lines):

diff --git a/configure.ag b/configure.ag
--- a/configure.ag
+++ b/configure.ag
@@ -2287,6 +2287,8 @@ if test "x$enable_odbc" != xno; then
        fi
        if test "x$have_unixodbc" != xno; then
                AC_MSG_CHECKING([checking whether SQLColAttribute uses SQLLEN * 
or SQLPOINTER])
+               save_CPPFLAGS="$CPPFLAGS"
+               CPPFLAGS="$CPPFLAGS $ODBC_INCS"
                AC_COMPILE_IFELSE([
                        AC_LANG_PROGRAM([[
                                #include <sql.h>
@@ -2303,6 +2305,7 @@ if test "x$enable_odbc" != xno; then
                                [[SQLColAttribute(0,0,0,0,0,0,0);]])],
                        [lenp_or_pointer_t='SQLLEN *'],
                        [lenp_or_pointer_t=SQLPOINTER])
+               CPPFLAGS="$save_CPPFLAGS"
                AC_MSG_RESULT([using "$lenp_or_pointer_t"])
                AC_DEFINE_UNQUOTED(LENP_OR_POINTER_T, $lenp_or_pointer_t,
                        [Define as SQLLEN * or SQLPOINTER depending on the 
include file])
diff --git a/gdk/gdk.h b/gdk/gdk.h
--- a/gdk/gdk.h
+++ b/gdk/gdk.h
@@ -1327,11 +1327,11 @@ gdk_export bte ATOMelmshift(int sz);
 #define bunfastins(b, h, t)                                            \
        do {                                                            \
                register BUN _p = BUNlast(b);                           \
-               if (_p == BUN_MAX || BATcount(b) == BUN_MAX) {          \
-                       GDKerror("bunfastins: too many elements to accomodate 
(INT_MAX)\n");    \
-                       goto bunins_failed;                             \
-               }                                                       \
-               if (_p + 1 > BATcapacity(b)) {                          \
+               if (_p >= BATcapacity(b)) {                             \
+                       if (_p == BUN_MAX || BATcount(b) == BUN_MAX) {  \
+                               GDKerror("bunfastins: too many elements to 
accomodate (INT_MAX)\n"); \
+                               goto bunins_failed;                     \
+                       }                                               \
                        if (BATextend((b), BATgrows(b)) == NULL)        \
                                goto bunins_failed;                     \
                }                                                       \
diff --git a/monetdb5/extras/rdf/rdf_shredder.c 
b/monetdb5/extras/rdf/rdf_shredder.c
--- a/monetdb5/extras/rdf/rdf_shredder.c
+++ b/monetdb5/extras/rdf/rdf_shredder.c
@@ -118,6 +118,7 @@ fatalHandler (void *user_data, raptor_lo
        }
 }
 
+static void
 errorHandler (void *user_data, raptor_locator* locator,
                const char *message)
 {
@@ -134,6 +135,7 @@ errorHandler (void *user_data, raptor_lo
        }
 }
 
+static void
 warningHandler (void *user_data, raptor_locator* locator,
                const char *message)
 {
diff --git a/tools/merovingian/daemon/client.c 
b/tools/merovingian/daemon/client.c
--- a/tools/merovingian/daemon/client.c
+++ b/tools/merovingian/daemon/client.c
@@ -115,7 +115,6 @@ handleClient(int sock, char isusock)
                        MONETDB5_PASSWDHASH
                        );
        mnstr_flush(fout);
-       free(algos);
 
        /* get response */
        buf[0] = '\0';
@@ -128,6 +127,7 @@ handleClient(int sock, char isusock)
                mnstr_flush(fout);
                close_stream(fout);
                close_stream(fdin);
+               free(algos);
                return(e);
        }
        buf[sizeof(buf) - 1] = '\0';
@@ -148,6 +148,7 @@ handleClient(int sock, char isusock)
                mnstr_flush(fout);
                close_stream(fout);
                close_stream(fdin);
+               free(algos);
                return(e);
        }
 
@@ -163,6 +164,7 @@ handleClient(int sock, char isusock)
                        mnstr_flush(fout);
                        close_stream(fout);
                        close_stream(fdin);
+                       free(algos);
                        return(e);
                }
                algo = passwd + 1;
@@ -173,6 +175,7 @@ handleClient(int sock, char isusock)
                        mnstr_flush(fout);
                        close_stream(fout);
                        close_stream(fdin);
+                       free(algos);
                        return(e);
                }
                *s = 0;
@@ -183,6 +186,7 @@ handleClient(int sock, char isusock)
                mnstr_flush(fout);
                close_stream(fout);
                close_stream(fdin);
+               free(algos);
                return(e);
        }
 
@@ -197,6 +201,7 @@ handleClient(int sock, char isusock)
                mnstr_flush(fout);
                close_stream(fout);
                close_stream(fdin);
+               free(algos);
                return(e);
        }
 
@@ -214,6 +219,7 @@ handleClient(int sock, char isusock)
                        mnstr_flush(fout);
                        close_stream(fout);
                        close_stream(fdin);
+                       free(algos);
                        return(e);
                } else {
                        *s = '\0';
@@ -227,6 +233,7 @@ handleClient(int sock, char isusock)
                mnstr_flush(fout);
                close_stream(fout);
                close_stream(fdin);
+               free(algos);
                return(newErr("client %s specified no database", host));
        }
 
@@ -236,6 +243,7 @@ handleClient(int sock, char isusock)
                        control_handleclient(host, sock, fdin, fout);
                close_stream(fout);
                close_stream(fdin);
+               free(algos);
                return(NO_ERR);
        }
 
@@ -264,6 +272,7 @@ handleClient(int sock, char isusock)
                mnstr_flush(fout);
                close_stream(fout);
                close_stream(fdin);
+               free(algos);
                return(e);
        }
        stat = top;
@@ -275,6 +284,7 @@ handleClient(int sock, char isusock)
        {
                multiplexAddClient(top->dbname, sock, fout, fdin, host);
                msab_freeStatus(&top);
+               free(algos);
                return(NO_ERR);
        }
 
@@ -303,6 +313,7 @@ handleClient(int sock, char isusock)
                close_stream(fout);
                close_stream(fdin);
                msab_freeStatus(&top);
+               free(algos);
                return(e);
        }
 
@@ -372,11 +383,13 @@ handleClient(int sock, char isusock)
                        close_stream(fdin);
                        Mfprintf(stdout, "starting a proxy failed: %s\n", e);
                        msab_freeStatus(&top);
+                       free(algos);
                        return(e);
                };
        }
 
        msab_freeStatus(&top);
+       free(algos);
        return(NO_ERR);
 }
 
diff --git a/tools/merovingian/daemon/merovingian.c 
b/tools/merovingian/daemon/merovingian.c
--- a/tools/merovingian/daemon/merovingian.c
+++ b/tools/merovingian/daemon/merovingian.c
@@ -324,7 +324,6 @@ terminateProcess(void *p)
                er = msab_getStatus(&stats, dbname);
                if (er != NULL) {
                        Mfprintf(stderr, "unexpected problem: %s\n", er);
-                       free(dbname);
                        free(er);
                        /* don't die, just continue, so we KILL in the end */
                } else if (stats == NULL) {
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to