[kernel] r5194 - people/waldi/linux-2.6/debian/bin
Bastian Blank
waldi at costa.debian.org
Tue Jan 3 14:45:51 UTC 2006
Author: waldi
Date: Tue Jan 3 14:45:49 2006
New Revision: 5194
Modified:
people/waldi/linux-2.6/debian/bin/apply.py
Log:
debian/bin/apply.py: Move complete reverse login into series class.
Modified: people/waldi/linux-2.6/debian/bin/apply.py
==============================================================================
--- people/waldi/linux-2.6/debian/bin/apply.py (original)
+++ people/waldi/linux-2.6/debian/bin/apply.py Tue Jan 3 14:45:49 2006
@@ -9,8 +9,9 @@
_default_source = "@source@"
class series(list):
- def __init__(self, name, home):
+ def __init__(self, name, home, reverse = False):
self.name = name
+ self.reverse = reverse
filename = os.path.join(home, 'series', name)
if not os.path.exists(filename):
@@ -57,38 +58,39 @@
return '<%s object for %s>' % (self.__class__.__name__, self.name)
def apply(self):
- for operation, patch, patchinfo in self:
- if operation == '.':
- print """\
+ if self.reverse:
+ for operation, patch, patchinfo in self[::-1]:
+ if operation == '.':
+ print """\
(.) IGNORED %s\
""" % patch
- elif operation == '+':
- self.patch_apply(patch, patchinfo)
- elif operation == '-':
- self.patch_deapply(patch, patchinf)
- elif operation == 'X':
- os.rename(patchinfo[0], patchinfo[1])
- print """\
- (X) REMOVED %s\
+ elif operation == '+':
+ self.patch_deapply(patch, patchinfo)
+ elif operation == '-':
+ self.patch_apply(patch, patchinfo)
+ elif operation == 'X':
+ os.rename(patchinfo[1], patchinfo[0])
+ print """\
+ (X) RESTORED %s\
""" % patch
- print "--> %s fully applied." % self.name
+ print "--> %s fully unapplied." % self.name
- def deapply(self):
- for operation, patch, patchinfo in self[::-1]:
- if operation == '.':
- print """\
+ else:
+ for operation, patch, patchinfo in self:
+ if operation == '.':
+ print """\
(.) IGNORED %s\
""" % patch
- elif operation == '+':
- self.patch_deapply(patch, patchinfo)
- elif operation == '-':
- self.patch_apply(patch, patchinfo)
- elif operation == 'X':
- os.rename(patchinfo[1], patchinfo[0])
- print """\
- (X) RESTORED %s\
+ elif operation == '+':
+ self.patch_apply(patch, patchinfo)
+ elif operation == '-':
+ self.patch_deapply(patch, patchinf)
+ elif operation == 'X':
+ os.rename(patchinfo[0], patchinfo[1])
+ print """\
+ (X) REMOVED %s\
""" % patch
- print "--> %s fully unapplied." % self.name
+ print "--> %s fully applied." % self.name
def patch_apply(self, patch, patchinfo):
ret = self.patch_call(patchinfo, '--fuzz=1')
@@ -128,7 +130,7 @@
raise SystemExit, 1
@staticmethod
- def read_all(s, home):
+ def read_all(s, home, reverse = False):
ret = []
for name in s:
@@ -136,7 +138,7 @@
if not os.path.exists(filename):
warn("Can't find series file for %s" % name)
else:
- i = series(name, home)
+ i = series(name, home, reverse)
ret.append(i)
return ret
@@ -253,10 +255,10 @@
vfile.commit()
elif current_index > target_index:
consider = revisions[current_index:target_index:-1]
- s = series.read_all(consider, home)
+ s = series.read_all(consider, home, reverse = True)
vfile.begin()
for i in s:
- i.deapply()
+ i.apply()
vfile.version = target
vfile.commit()
More information about the Kernel-svn-changes
mailing list