Remove EJS tests.
[sfrench/samba-autobuild/.git] / source4 / lib / tdb / common / transaction.c
index c3e7a4e2c065d55492fbc9ddb3c1ff6946bf7057..7acda640c8d32338de6e8651971d5f848740aae6 100644 (file)
@@ -321,6 +321,9 @@ static int transaction_write_existing(struct tdb_context *tdb, tdb_off_t off,
 
        if (blk == tdb->transaction->num_blocks-1 &&
            off + len > tdb->transaction->last_block_size) {
+               if (off >= tdb->transaction->last_block_size) {
+                       return 0;
+               }
                len = tdb->transaction->last_block_size - off;
        }
 
@@ -560,7 +563,7 @@ static int transaction_sync(struct tdb_context *tdb, tdb_off_t offset, tdb_len_t
                TDB_LOG((tdb, TDB_DEBUG_FATAL, "tdb_transaction: fsync failed\n"));
                return -1;
        }
-#ifdef MS_SYNC
+#ifdef HAVE_MMAP
        if (tdb->map_ptr) {
                tdb_off_t moffset = offset & ~(tdb->page_size-1);
                if (msync(moffset + (char *)tdb->map_ptr,