   (svn-run-svn t t 'add "add" "--targets" svn-status-temp-arg-file))
 
 (defun svn-status-make-directory (dir)
+  "Run `svn add DIR'."
   ;; TODO: Allow entering a URI interactively.
   ;; Currently, `read-file-name' corrupts it.
-  (interactive (list (read-file-name "Make directory: ")))
+  (interactive (list (read-file-name
+                      "Make directory: "
+                      ;;the `or' below is because s-s-g-l-i returns `nil' if
+                      ;;point was outside the file list, but we need
+                      ;;s-s-l-i->f to return a string to add to `default-directory'.
+                      (concat default-directory
+                              (file-name-directory
+                               (svn-status-line-info->filename
+                                (or (svn-status-get-line-information)
+                                    '(nil nil nil ""))))))))
   (unless (string-match "^[^:/]+://" dir) ; Is it a URI?
     (setq dir (file-relative-name dir)))
   (svn-run-svn t t 'mkdir "mkdir" "--" dir))

    (t (:weight bold)))
  "Face to highlight the externaly modified phrase in svn status buffers")

(defvar svn-highlight t)
;; stolen from PCL-CVS
(defun svn-add-face (str face &optional keymap)

                         str))
  str)

(defun svn-status-maybe-add-face (condition text face)
  "If CONDITION then add FACE to TEXT.
Else return TEXT unchanged."
  (if condition
      (svn-add-face text face)
    text))

(defun svn-status-choose-face-to-add (condition text face1 face2)
  "If CONDITION then add FACE1 to TEXT, else add FACE2 to TEXT."
  (if condition
      (svn-add-face text face1)
    (svn-add-face text face2)))

; compatibility
; emacs 20
(unless (fboundp 'point-at-eol) (defalias 'point-at-eol 'line-end-position))
