Merge "Sync with upstream up to 0d367b12:" am: fa304d06a2 am: 686b91faf3
am: 46dbbd915e

Change-Id: Ibdf3220bf31aa5d9f667bf9e34680b38bd1ba000
diff --git a/dir.c b/dir.c
index e59536f..e56bbf8 100644
--- a/dir.c
+++ b/dir.c
@@ -629,6 +629,15 @@
 					vallfn = NULL;
 				}
 				lidx = *p & LRNOMASK;
+				if (lidx == 0) {
+					pwarn("invalid long name\n");
+					if (!invlfn) {
+						invlfn = vallfn;
+						invcl = valcl;
+					}
+					vallfn = NULL;
+					continue;
+				}
 				t = longName + --lidx * 13;
 				for (k = 1; k < 11 && t < longName +
 				    sizeof(longName); k += 2) {