--- a/hgext/mq.py
+++ b/hgext/mq.py
@@ -1607,6 +1607,9 @@ def refresh(ui, repo, *pats, **opts):
q = repo.mq
message = cmdutil.logmessage(opts)
if opts['edit']:
+ if not q.applied:
+ ui.write(_("No patches applied\n"))
+ return 1
if message:
raise util.Abort(_('option "-e" incompatible with "-m" or "-l"'))
patch = q.applied[-1].name
--- a/tests/test-mq-qrefresh-replace-log-message
+++ b/tests/test-mq-qrefresh-replace-log-message
@@ -8,6 +8,11 @@ echo "mq=" >> $HGRCPATH
hg init
hg qinit
+echo =======================
+echo "Should fail if no patches applied"
+hg qrefresh
+hg qrefresh -e
+
hg qnew -m "First commit message" first-patch
echo aaaa > file
hg add file
--- a/tests/test-mq-qrefresh-replace-log-message.out
+++ b/tests/test-mq-qrefresh-replace-log-message.out
@@ -1,3 +1,7 @@
+=======================
+Should fail if no patches applied
+No patches applied
+No patches applied
=======================
Should display 'First commit message'
description: