505.1.1
by Jelmer Vernooij
Make handle-patch not dependend on the users name being abentley and install it. |
1 |
#!/usr/bin/python
|
2 |
||
3 |
from bzrlib import errors, merge_directive |
|
4 |
from bzrlib.plugin import load_plugins |
|
5 |
from bzrlib.plugins.gtk import open_display |
|
6 |
load_plugins() |
|
7 |
||
8 |
import sys |
|
9 |
||
10 |
if len(sys.argv) < 2: |
|
11 |
print "Usage: handle-patch <path>" |
|
12 |
sys.exit(1) |
|
13 |
||
14 |
||
15 |
path = sys.argv[1] |
|
16 |
||
17 |
try: |
|
18 |
from bzrlib.plugins.gtk.diff import (DiffController, |
|
19 |
MergeDirectiveController) |
|
20 |
if path == '-': |
|
21 |
lines = sys.stdin.readlines() |
|
22 |
else: |
|
23 |
lines = open(path, 'rb').readlines() |
|
24 |
lines = [l.replace('\r\n', '\n') for l in lines] |
|
25 |
try: |
|
26 |
directive = merge_directive.MergeDirective.from_lines(lines) |
|
27 |
except errors.NotAMergeDirective: |
|
688.3.1
by Toshio Kuratomi
Fix bzr-handle-patch to process patches with leading and trailing comments with |
28 |
controller = DiffController(path, lines, allow_dirty=True) |
505.1.1
by Jelmer Vernooij
Make handle-patch not dependend on the users name being abentley and install it. |
29 |
else: |
30 |
controller = MergeDirectiveController(path, directive) |
|
31 |
window = controller.window |
|
32 |
window.show() |
|
33 |
gtk = open_display() |
|
34 |
window.connect("destroy", gtk.main_quit) |
|
35 |
except Exception, e: |
|
666.3.1
by Toshio Kuratomi
Fix import of error_dialog. |
36 |
from bzrlib.plugins.gtk.dialog import error_dialog |
505.1.1
by Jelmer Vernooij
Make handle-patch not dependend on the users name being abentley and install it. |
37 |
error_dialog('Error', str(e)) |
38 |
raise
|
|
39 |
gtk.main() |