diff --git a/src/Make_mvc.mak b/src/Make_mvc.mak
index 6be13fb..2417d77 100644
--- a/src/Make_mvc.mak
+++ b/src/Make_mvc.mak
@@ -147,6 +147,8 @@
 #
 #	Static Code Analysis: ANALYZE=yes (works with VS2012 or later)
 #
+#	Address Sanitizer: ASAN=yes (works with VS2019 or later)
+#
 # You can combine any of these interfaces
 #
 # Example: To build the non-debug, GUI version with Perl interface:
@@ -662,6 +664,12 @@
 CFLAGS = $(CFLAGS) /analyze
 !endif
 
+# Address Sanitizer (ASAN) generally available starting with VS2019 version
+# 16.9
+!if ("$(ASAN)" == "yes") && ($(MSVC_MAJOR) >= 14)
+CFLAGS = $(CFLAGS) /fsanitize=address
+!endif
+
 !ifdef NODEBUG
 VIM = vim
 ! if "$(OPTIMIZE)" == "SPACE"
diff --git a/src/findfile.c b/src/findfile.c
index 4f457b9..ab59776 100644
--- a/src/findfile.c
+++ b/src/findfile.c
@@ -2653,7 +2653,7 @@
 
     p = filename;
 # ifdef BACKSLASH_IN_FILENAME
-    if (p[1] == ':')	    // skip "x:"
+    if (p[0] != NUL && p[1] == ':')	    // skip "x:"
 	p += 2;
 # endif
 
diff --git a/src/os_mswin.c b/src/os_mswin.c
index 360c456..b6393db 100644
--- a/src/os_mswin.c
+++ b/src/os_mswin.c
@@ -389,6 +389,8 @@
     // Another way to check is to use mch_FullName() and see if the result is
     // the same as the name or mch_FullName() fails.  However, this has quite a
     // bit of overhead, so let's not do that.
+    if (*fname == NUL)
+	return TRUE;
     return ((ASCII_ISALPHA(fname[0]) && fname[1] == ':'
 				      && (fname[2] == '/' || fname[2] == '\\'))
 	    || (fname[0] == fname[1] && (fname[0] == '/' || fname[0] == '\\')));
diff --git a/src/testdir/test_fnamemodify.vim b/src/testdir/test_fnamemodify.vim
index 7882f3c..dfe322a 100644
--- a/src/testdir/test_fnamemodify.vim
+++ b/src/testdir/test_fnamemodify.vim
@@ -93,6 +93,7 @@
   call assert_equal('b.c', fnamemodify('a.b.c.d.e', ':r:r:e:e:e'))
   call assert_equal('b.c', fnamemodify('a.b.c.d.e', ':r:r:e:e:e:e'))
 
+  call assert_equal('', fnamemodify('', ':p:t'))
   call assert_equal('', fnamemodify(test_null_string(), test_null_string()))
 endfunc
 
diff --git a/src/version.c b/src/version.c
index 0e7a67d..6576a55 100644
--- a/src/version.c
+++ b/src/version.c
@@ -750,6 +750,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    3824,
+/**/
     3823,
 /**/
     3822,
