diff --git a/src/fileio.c b/src/fileio.c
index 1c0ac85..c7a2b74 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -2953,7 +2953,7 @@
     }
     /* When starting to edit a new file which does not have encryption, clear
      * the 'key' option, except when starting up (called with -x argument) */
-    else if (newfile && *curbuf->b_p_key && !starting)
+    else if (newfile && *curbuf->b_p_key != NUL && !starting)
 	set_option_value((char_u *)"key", 0L, (char_u *)"", OPT_LOCAL);
 
     return cryptkey;
diff --git a/src/undo.c b/src/undo.c
index 6d50cc8..eb887d8 100644
--- a/src/undo.c
+++ b/src/undo.c
@@ -888,7 +888,7 @@
 
     ptr = read_string(fd, len);
 #ifdef FEAT_CRYPT
-    if (ptr != NULL || *buf->b_p_key != NUL)
+    if (ptr != NULL && *buf->b_p_key != NUL)
 	crypt_decode(ptr, len);
 #endif
     return ptr;
@@ -909,7 +909,7 @@
     /* If the buffer is encrypted then all text bytes following will be
      * encrypted.  Numbers and other info is not crypted. */
 #ifdef FEAT_CRYPT
-    if (*buf->b_p_key)
+    if (*buf->b_p_key != NUL)
     {
 	char_u *header;
 	int    header_len;
@@ -1475,7 +1475,7 @@
     if (serialize_header(fp, buf, hash) == FAIL)
 	goto write_error;
 #ifdef FEAT_CRYPT
-    if (*buf->b_p_key)
+    if (*buf->b_p_key != NUL)
 	do_crypt = TRUE;
 #endif
 
