diff --git a/newbrt/checkpoint.c b/newbrt/checkpoint.c
index bc2f66a42b9153b0613a4a83d8b37f7f07466735..510e45192a086233a73e8e32cb9ef22eefe261fc 100644
--- a/newbrt/checkpoint.c
+++ b/newbrt/checkpoint.c
@@ -206,7 +206,7 @@ toku_checkpoint(CACHETABLE ct, TOKULOGGER logger, char **error_string,
 	    callback_f(extra);      // callback is called with checkpoint_safe_lock still held
 	r = toku_cachetable_end_checkpoint(ct, logger, error_string, callback2_f, extra2);
     }
-    if (r==0) {
+    if (r==0 && logger) {
         LSN trim_lsn = (oldest_live_lsn.lsn < logger->checkpoint_lsn.lsn) ? oldest_live_lsn : logger->checkpoint_lsn;
         r = toku_logger_maybe_trim_log(logger, trim_lsn);
     }