From 906a512e0b6b6b4d3398db274c7e34ce788357df Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Sun, 6 May 2001 01:28:17 +0000 Subject: merge from 2.2 (This used to be commit 13bf966cb8ed8df6b02018dceff94c275def8200) --- source3/tdb/tdb.c | 8 ++------ source3/tdb/tdbutil.c | 7 +++++-- 2 files changed, 7 insertions(+), 8 deletions(-) (limited to 'source3') diff --git a/source3/tdb/tdb.c b/source3/tdb/tdb.c index bf94e4cbd3..e4f6325dc4 100644 --- a/source3/tdb/tdb.c +++ b/source3/tdb/tdb.c @@ -429,7 +429,6 @@ static int tdb_expand(TDB_CONTEXT *tdb, tdb_off size) struct list_struct rec; tdb_off offset; char b = 0; - void *old_map_ptr; if (tdb_lock(tdb, -1, F_WRLCK) == -1) return 0; @@ -440,8 +439,6 @@ static int tdb_expand(TDB_CONTEXT *tdb, tdb_off size) the database up to a multiple of TDB_PAGE_SIZE */ size = TDB_ALIGN(tdb->map_size + size*10, TDB_PAGE_SIZE) - tdb->map_size; - old_map_ptr = tdb->map_ptr; - if (!(tdb->flags & TDB_INTERNAL) && tdb->map_ptr) tdb->map_ptr = tdb_munmap(tdb->map_ptr, tdb->map_size); @@ -472,9 +469,8 @@ static int tdb_expand(TDB_CONTEXT *tdb, tdb_off size) if (!(tdb->flags & TDB_NOMMAP)) { tdb->map_ptr = tdb_mmap(tdb->map_size, 0, tdb->fd); - /* if old_map_ptr was != NULL but the new one is, we have an error. */ - if (old_map_ptr && (tdb->map_ptr == NULL)) - goto fail; + /* We're ok if this fails and returns NULL, as we'll + fallback to read/write here. */ } /* form a new freelist record */ diff --git a/source3/tdb/tdbutil.c b/source3/tdb/tdbutil.c index c387644efc..a620f085a9 100644 --- a/source3/tdb/tdbutil.c +++ b/source3/tdb/tdbutil.c @@ -127,7 +127,7 @@ size_t tdb_pack(char *buf, int bufsize, char *fmt, ...) uint32 d; int i; void *p; - int len=0; + int len; char *s; char c; char *buf0 = buf; @@ -188,6 +188,7 @@ size_t tdb_pack(char *buf, int bufsize, char *fmt, ...) default: DEBUG(0,("Unknown tdb_pack format %c in %s\n", c, fmt)); + len = 0; break; } @@ -213,7 +214,7 @@ int tdb_unpack(char *buf, int bufsize, char *fmt, ...) va_list ap; uint16 *w; uint32 *d; - int len=0; + int len; int *i; void **p; char *s, **b; @@ -272,6 +273,8 @@ int tdb_unpack(char *buf, int bufsize, char *fmt, ...) default: DEBUG(0,("Unknown tdb_unpack format %c in %s\n", c, fmt)); + + len = 0; break; } -- cgit