diff -r b6531d806de8 -r ee5f834077be hgext/gpg.py --- a/hgext/gpg.py Fri Oct 10 11:38:00 2014 -0500 +++ b/hgext/gpg.py Sat Oct 18 18:04:31 2014 -0500 @@ -253,12 +253,11 @@ repo.opener.append("localsigs", sigmessage) return - msigs = match.exact(repo.root, '', ['.hgsigs']) - s = repo.status(match=msigs, unknown=True, ignored=True)[:6] - if util.any(s) and not opts["force"]: - raise util.Abort(_("working copy of .hgsigs is changed " - "(please commit .hgsigs manually " - "or use --force)")) + if not opts["force"]: + msigs = match.exact(repo.root, '', ['.hgsigs']) + if util.any(repo.status(match=msigs, unknown=True, ignored=True)): + raise util.Abort(_("working copy of .hgsigs is changed "), + hint=_("please commit .hgsigs manually")) sigsfile = repo.wfile(".hgsigs", "ab") sigsfile.write(sigmessage) @@ -277,8 +276,9 @@ % hgnode.short(n) for n in nodes]) try: + editor = cmdutil.getcommiteditor(editform='gpg.sign', **opts) repo.commit(message, opts['user'], opts['date'], match=msigs, - editor=cmdutil.getcommiteditor(**opts)) + editor=editor) except ValueError, inst: raise util.Abort(str(inst))