equal
deleted
inserted
replaced
483 def hashlines(self): |
483 def hashlines(self): |
484 self.hash = {} |
484 self.hash = {} |
485 for x, s in enumerate(self.lines): |
485 for x, s in enumerate(self.lines): |
486 self.hash.setdefault(s, []).append(x) |
486 self.hash.setdefault(s, []).append(x) |
487 |
487 |
|
488 def makerejlines(self, fname): |
|
489 base = os.path.basename(fname) |
|
490 yield "--- %s\n+++ %s\n" % (base, base) |
|
491 for x in self.rej: |
|
492 for l in x.hunk: |
|
493 yield l |
|
494 if l[-1] != '\n': |
|
495 yield "\n\ No newline at end of file\n" |
|
496 |
488 def write_rej(self): |
497 def write_rej(self): |
489 # our rejects are a little different from patch(1). This always |
498 # our rejects are a little different from patch(1). This always |
490 # creates rejects in the same form as the original patch. A file |
499 # creates rejects in the same form as the original patch. A file |
491 # header is inserted so that you can run the reject through patch again |
500 # header is inserted so that you can run the reject through patch again |
492 # without having to type the filename. |
501 # without having to type the filename. |
497 fname = self.fname + ".rej" |
506 fname = self.fname + ".rej" |
498 self.ui.warn( |
507 self.ui.warn( |
499 _("%d out of %d hunks FAILED -- saving rejects to file %s\n") % |
508 _("%d out of %d hunks FAILED -- saving rejects to file %s\n") % |
500 (len(self.rej), self.hunks, fname)) |
509 (len(self.rej), self.hunks, fname)) |
501 |
510 |
502 def rejlines(): |
511 fp = self.opener(fname, 'w') |
503 base = os.path.basename(self.fname) |
512 fp.writelines(self.makerejlines(self.fname)) |
504 yield "--- %s\n+++ %s\n" % (base, base) |
513 fp.close() |
505 for x in self.rej: |
|
506 for l in x.hunk: |
|
507 yield l |
|
508 if l[-1] != '\n': |
|
509 yield "\n\ No newline at end of file\n" |
|
510 |
|
511 self.writelines(fname, rejlines()) |
|
512 |
514 |
513 def apply(self, h): |
515 def apply(self, h): |
514 if not h.complete(): |
516 if not h.complete(): |
515 raise PatchError(_("bad hunk #%d %s (%d %d %d %d)") % |
517 raise PatchError(_("bad hunk #%d %s (%d %d %d %d)") % |
516 (h.number, h.desc, len(h.a), h.lena, len(h.b), |
518 (h.number, h.desc, len(h.a), h.lena, len(h.b), |