Changeset: abb311c8ebcc for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/abb311c8ebcc
Modified Files:
        gdk/gdk_bbp.c
Branch: multi-cachelock
Log Message:

fix leak bug: attaching wrong end


diffs (22 lines):

diff --git a/gdk/gdk_bbp.c b/gdk/gdk_bbp.c
--- a/gdk/gdk_bbp.c
+++ b/gdk/gdk_bbp.c
@@ -2466,7 +2466,8 @@ maybeextend(int idx) {
        if (BBP_free(GENERAL_LIST_IDX) > 0) {
                /* take a chunk out of the general free list on top of my own 
free list */
                int i = 1;
-               bat cf = BBP_free(GENERAL_LIST_IDX);
+               bat ocf = BBP_free(GENERAL_LIST_IDX);
+               bat cf = ocf;
                BBP_pidx(cf) = idx;
                while (BBP_next(cf) && i < FREE_CHUNK_ALLOC_SIZE) {
                        cf = BBP_next(cf);
@@ -2476,7 +2477,7 @@ maybeextend(int idx) {
                BBP_free(GENERAL_LIST_IDX) = BBP_next(cf);
                MT_lock_unset(&GDKcacheLock(GENERAL_LIST_IDX));
                BBP_next(cf) = 0;
-               BBP_free(idx) = cf;
+               BBP_free(idx) = ocf;
                return GDK_SUCCEED;
        }
        /* there wasn't anything left on the general free list */
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to