dirstate: notice truncated parents read
authorMatt Mackall <mpm@selenic.com>
Mon, 25 May 2009 12:48:15 -0500
changeset 8640 8536119f2f94
parent 8639 1323dddf8078
child 8641 33686ef26f04
dirstate: notice truncated parents read
mercurial/dirstate.py
--- a/mercurial/dirstate.py	Mon May 25 10:44:37 2009 -0500
+++ b/mercurial/dirstate.py	Mon May 25 12:48:15 2009 -0500
@@ -75,6 +75,8 @@
             st = self._opener("dirstate").read(40)
             if len(st) == 40:
                 return st[:20], st[20:40]
+            if len(st) < 40:
+                raise util.Abort(_('working directory state appears damaged!'))
         except IOError, err:
             if err.errno != errno.ENOENT: raise
         return [nullid, nullid]