don't shortcut closing if the metadata is dirty (from the krb5 tree)

This commit is contained in:
christos 2016-08-31 06:23:51 +00:00
parent 8e7f733949
commit d2f713bbd1
1 changed files with 4 additions and 3 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: bt_close.c,v 1.14 2008/09/11 12:58:00 joerg Exp $ */ /* $NetBSD: bt_close.c,v 1.15 2016/08/31 06:23:51 christos Exp $ */
/*- /*-
* Copyright (c) 1990, 1993, 1994 * Copyright (c) 1990, 1993, 1994
@ -37,7 +37,7 @@
#endif #endif
#include <sys/cdefs.h> #include <sys/cdefs.h>
__RCSID("$NetBSD: bt_close.c,v 1.14 2008/09/11 12:58:00 joerg Exp $"); __RCSID("$NetBSD: bt_close.c,v 1.15 2016/08/31 06:23:51 christos Exp $");
#include "namespace.h" #include "namespace.h"
@ -136,7 +136,8 @@ __bt_sync(const DB *dbp, u_int flags)
return (RET_ERROR); return (RET_ERROR);
} }
if (F_ISSET(t, B_INMEM | B_RDONLY) || !F_ISSET(t, B_MODIFIED)) if (F_ISSET(t, B_INMEM | B_RDONLY)
|| !F_ISSET(t, B_MODIFIED | B_METADIRTY))
return (RET_SUCCESS); return (RET_SUCCESS);
if (F_ISSET(t, B_METADIRTY) && bt_meta(t) == RET_ERROR) if (F_ISSET(t, B_METADIRTY) && bt_meta(t) == RET_ERROR)