* lisp/mpc.el (mpc-songs-jump-to): Don't burp if the user clicks in an
authorStefan Monnier <monnier@iro.umontreal.ca>
Fri, 14 Oct 2011 18:37:53 +0000 (14:37 -0400)
committerStefan Monnier <monnier@iro.umontreal.ca>
Fri, 14 Oct 2011 18:37:53 +0000 (14:37 -0400)
empty buffer.

lisp/ChangeLog
lisp/mpc.el

index 8766289..9d9ae37 100644 (file)
@@ -1,5 +1,8 @@
 2011-10-14  Stefan Monnier  <monnier@iro.umontreal.ca>
 
+       * mpc.el (mpc-songs-jump-to): Don't burp if the user clicks in an
+       empty buffer.
+
        * mouse.el (mouse-drag-mode-line-1): Modify the end-event we pushed on
        unread-command-events rather than pushing yet-another event.
 
index 251e186..40ccb45 100644 (file)
@@ -1996,12 +1996,14 @@ This is used so that they can be compared with `eq', which is needed for
        (list (get-text-property (point) 'mpc-file)
              posn))))
   (let* ((plbuf (mpc-proc-cmd "playlist"))
-         (re (concat "^\\([0-9]+\\):" (regexp-quote song-file) "$"))
+         (re (if song-file
+                (concat "^\\([0-9]+\\):" (regexp-quote song-file) "$")))
          (sn (with-current-buffer plbuf
                (goto-char (point-min))
-               (when (re-search-forward re nil t)
+               (when (and re (re-search-forward re nil t))
                  (match-string 1)))))
     (cond
+     ((null re) (posn-set-point posn))
      ((null sn) (error "This song is not in the playlist"))
      ((null (with-current-buffer plbuf (re-search-forward re nil t)))
       ;; song-file only appears once in the playlist: no ambiguity,