def func(parser, options, args):
if len(args) == 0:
- dirname = 'patches'
+ dirname = 'patches-%s' % crt_series.get_branch()
elif len(args) == 1:
dirname = args[0]
else:
if start in applied:
start_idx = applied.index(start)
else:
- raise CmdException, 'Patch "%s" not applied' % start
+ if start in unapplied:
+ raise CmdException, 'Patch "%s" not applied' % start
+ else:
+ raise CmdException, 'Patch "%s" does not exist' % start
+
if stop in applied:
stop_idx = applied.index(stop) + 1
else:
- raise CmdException, 'Patch "%s" not applied' % stop
+ if stop in unapplied:
+ raise CmdException, 'Patch "%s" not applied' % stop
+ else:
+ raise CmdException, 'Patch "%s" does not exist' % stop
if start_idx >= stop_idx:
raise CmdException, 'Incorrect patch range order'
patch = crt_series.get_patch(p)
tmpl_dict = {'description': patch.get_description().rstrip(),
- 'diffstat': git.diffstat(rev1 = git_id('%s/bottom' % p),
- rev2 = git_id('%s/top' % p)),
+ 'diffstat': git.diffstat(rev1 = patch.get_bottom(),
+ rev2 = patch.get_top()),
'authname': patch.get_authname(),
'authemail': patch.get_authemail(),
'authdate': patch.get_authdate(),
f.write(descr)
# write the diff
- git.diff(rev1 = git_id('%s/bottom' % p),
- rev2 = git_id('%s/top' % p),
+ git.diff(rev1 = patch.get_bottom(),
+ rev2 = patch.get_top(),
out_fd = f)
f.close()
patch_no += 1