   (loop for item in list
         if (listp item) nconc (svn-status-flatten-list item)
         else collect item))
+
+;; no idea, if there is a simpler way to achieve this...
+(defun svn-status-window-line-position ()
+  "Return the window line at point."
+  (let ((edges (window-inside-edges))
+	(x-y (posn-x-y (posn-at-point))))
+    (+ (car (cdr edges))
+       (/ (or (cdr x-y) 0) (frame-char-height)))))
 
 ;;;###autoload
 (defun svn-checkout (repos-url path)

        (progn
          (goto-char fname-pos)
          (svn-status-goto-file-name fname)
          (goto-char (+ column (svn-point-at-bol))))
      (goto-char (+ (next-overlay-change (point-min)) svn-status-default-column)))))

(defun svn-status-parse-info (arg)

        (first-line t)
        (fname (svn-status-line-info->filename (svn-status-get-line-information)))
        (fname-pos (point))
        (window-line-pos (svn-status-window-line-position))
        (header-line-string)
        (column (current-column)))
    (delete-region (point-min) (point-max))
