Valgrind complaints

vmware
Howard Chu 13 years ago
parent 01c2f7816f
commit 819d98169e
  1. 2
      libraries/libmdb/Makefile
  2. 12
      libraries/libmdb/mdb.c

@ -4,7 +4,7 @@ OPT = -O2 -g
CFLAGS = -pthread $(OPT) $(W) $(XCFLAGS) CFLAGS = -pthread $(OPT) $(W) $(XCFLAGS)
LDLIBS = LDLIBS =
all: mtest mdb_stat all: mdb_stat mtest mtest2
clean: clean:
rm -rf mtest mdb_stat *.[ao] *~ testdb rm -rf mtest mdb_stat *.[ao] *~ testdb

@ -1299,6 +1299,8 @@ fail:
} }
#define LOCKNAME "/lock.mdb"
#define DATANAME "/data.mdb"
int int
mdbenv_open(MDB_env *env, const char *path, unsigned int flags, mode_t mode) mdbenv_open(MDB_env *env, const char *path, unsigned int flags, mode_t mode)
{ {
@ -1306,12 +1308,12 @@ mdbenv_open(MDB_env *env, const char *path, unsigned int flags, mode_t mode)
char *lpath, *dpath; char *lpath, *dpath;
len = strlen(path); len = strlen(path);
lpath = malloc(len + sizeof("/lock.mdb") + len + sizeof("/data.db")); lpath = malloc(len + sizeof(LOCKNAME) + len + sizeof(DATANAME));
if (!lpath) if (!lpath)
return ENOMEM; return ENOMEM;
dpath = lpath + len + sizeof("/lock.mdb"); dpath = lpath + len + sizeof(LOCKNAME);
sprintf(lpath, "%s/lock.mdb", path); sprintf(lpath, "%s" LOCKNAME, path);
sprintf(dpath, "%s/data.mdb", path); sprintf(dpath, "%s" DATANAME, path);
rc = mdbenv_setup_locks(env, lpath, mode, &excl); rc = mdbenv_setup_locks(env, lpath, mode, &excl);
if (rc) if (rc)
@ -1351,6 +1353,8 @@ mdbenv_close(MDB_env *env)
if (env == NULL) if (env == NULL)
return; return;
free(env->me_dbs[1]);
free(env->me_dbs[0]);
free(env->me_dbxs); free(env->me_dbxs);
free(env->me_path); free(env->me_path);

Loading…
Cancel
Save