summaryrefslogtreecommitdiff
path: root/source3/lib/tdb/common
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2008-01-31 09:48:20 +1100
committerAndrew Tridgell <tridge@samba.org>2008-01-31 09:48:20 +1100
commit6b5980e47e86df77e43324e705d8509dea4ac0d4 (patch)
treea357b6f842d761522ed9a72d6545eb504abb2ae6 /source3/lib/tdb/common
parent8daaa5d99bfd848c76f98de952289a26f93cca3c (diff)
downloadsamba-6b5980e47e86df77e43324e705d8509dea4ac0d4.tar.gz
samba-6b5980e47e86df77e43324e705d8509dea4ac0d4.tar.bz2
samba-6b5980e47e86df77e43324e705d8509dea4ac0d4.zip
merged tdb transaction fix
(This used to be commit 1a1c7954368a7f168a57f86f4f857cf70258e37a)
Diffstat (limited to 'source3/lib/tdb/common')
-rw-r--r--source3/lib/tdb/common/transaction.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/source3/lib/tdb/common/transaction.c b/source3/lib/tdb/common/transaction.c
index c3e7a4e2c0..4e2127be64 100644
--- a/source3/lib/tdb/common/transaction.c
+++ b/source3/lib/tdb/common/transaction.c
@@ -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;
}