     nil))
 (defun svn-status-line-info->lastchangerev (line-info)
   "Return the last revision in which LINE-INFO was modified."
-  (if (>= (nth 5 line-info) 0)
-      (nth 5 line-info)
-    nil))
+  (let ((l (nth 5 line-info)))
+    (if (and l (>= l 0))
+        l
+      nil)))
 (defun svn-status-line-info->author (line-info) (nth 6 line-info))
 (defun svn-status-line-info->modified-external (line-info) (nth 7 line-info))
 (defun svn-status-line-info->locked (line-info)

(defun svn-status-annotate-status-buffer-entry (action line-info)
  (let ((tag-string))
    (svn-status-goto-file-name (svn-status-line-info->filename line-info))
    (cond ((equal action 'committed)
           (when svn-status-commit-rev-number
             (svn-status-line-info->set-localrev line-info svn-status-commit-rev-number))
             (svn-status-line-info->set-lastchangerev line-info svn-status-commit-rev-number)
             (setq tag-string " <committed>"))
          ((equal action 'added)
           (setq tag-string " <added>"))
          ((equal action 'deleted)

         (svn-dir-len (length (or svn-dir "")))
         (file-dir-len (length file-dir))
         (file-name))
    (when (and (get-buffer "*svn-status*")
               svn-dir
               (>= file-dir-len svn-dir-len)
               (string= (substring file-dir 0 svn-dir-len) svn-dir))
      (setq file-name (substring (buffer-file-name) svn-dir-len))
