diff --git a/stgit/commands/common.py b/stgit/commands/common.py
index b05979b..14dbf67 100644
--- a/stgit/commands/common.py
+++ b/stgit/commands/common.py
@@ -89,7 +89,8 @@ def git_id(rev):
patch = series.get_current()
if not patch:
raise CmdException, 'No patches applied'
- if patch in series.get_applied() or patch in series.get_unapplied():
+ if patch in series.get_applied() or patch in series.get_unapplied() or \
+ patch in series.get_hidden():
if patch_id in ['top', '', None]:
return series.get_patch(patch).get_top()
elif patch_id == 'bottom':diff --git a/stgit/commands/log.py b/stgit/commands/log.py
index e3e17f9..9259290 100644
--- a/stgit/commands/log.py
+++ b/stgit/commands/log.py
@@ -90,7 +90,8 @@ def func(parser, options, args):
raise CmdException, 'No patches applied'
elif len(args) == 1:
name = args[0]
- if not name in crt_series.get_applied() + crt_series.get_unapplied():
+ if not name in crt_series.get_applied() + crt_series.get_unapplied() + \
+ crt_series.get_hidden():
raise CmdException, 'Unknown patch "%s"' % name
else:
parser.error('incorrect number of arguments')diff --git a/stgit/commands/show.py b/stgit/commands/show.py
index 3bf4f20..2b22744 100644
--- a/stgit/commands/show.py
+++ b/stgit/commands/show.py
@@ -55,7 +55,8 @@ def func(parser, options, args):
elif len(args) == 0:
patches = ['HEAD']
else:
- patches = parse_patches(args, applied + unapplied, len(applied))
+ patches = parse_patches(args, applied + unapplied +\
+ crt_series.get_hidden(), len(applied))
if options.diff_opts:
diff_flags = options.diff_opts.split()