X-Git-Url: https://git.ozlabs.org/?p=ccan;a=blobdiff_plain;f=ccan%2Ftdb2%2Ftransaction.c;h=3c17bc7dd7cf808c4687880ceaea2feadeedda7f;hp=a143ee853c67f102407fc461912c6373ec91f79b;hb=1ad66fedf81fdaf0f07a2b00d6787614c58a23ef;hpb=75955fba3008889c61ea488de9a8c376ae37b8db diff --git a/ccan/tdb2/transaction.c b/ccan/tdb2/transaction.c index a143ee85..3c17bc7d 100644 --- a/ccan/tdb2/transaction.c +++ b/ccan/tdb2/transaction.c @@ -430,7 +430,7 @@ static enum TDB_ERROR transaction_sync(struct tdb_context *tdb, return TDB_SUCCESS; } - if (fsync(tdb->fd) != 0) { + if (fsync(tdb->file->fd) != 0) { return tdb_logerr(tdb, TDB_ERR_IO, TDB_LOG_ERROR, "tdb_transaction: fsync failed: %s", strerror(errno)); @@ -495,8 +495,8 @@ static void _tdb_transaction_cancel(struct tdb_context *tdb) } } - if (tdb->allrecord_lock.count) - tdb_allrecord_unlock(tdb, tdb->allrecord_lock.ltype); + if (tdb->file->allrecord_lock.count) + tdb_allrecord_unlock(tdb, tdb->file->allrecord_lock.ltype); /* restore the normal io methods */ tdb->methods = tdb->transaction->io_methods; @@ -745,11 +745,12 @@ static void set_recovery_header(struct tdb_recovery_record *rec, static enum TDB_ERROR transaction_setup_recovery(struct tdb_context *tdb, tdb_off_t *magic_offset) { - tdb_len_t recovery_size; + /* Initialized for GCC's 4.4.5 overzealous uninitialized warnings. */ + tdb_len_t recovery_size = 0; + tdb_off_t recovery_offset = 0, recovery_max_size = 0; unsigned char *data, *p; const struct tdb_methods *methods = tdb->transaction->io_methods; struct tdb_recovery_record *rec; - tdb_off_t recovery_offset, recovery_max_size; tdb_off_t old_map_size = tdb->transaction->old_map_size; uint64_t magic, tailer; int i;