~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/msgeditor.py

Merge bzr.dev

Show diffs side-by-side

added added

removed removed

Lines of Context:
17
17
 
18
18
"""Commit message editor support."""
19
19
 
20
 
 
 
20
import codecs
21
21
import errno
22
22
import os
23
23
from subprocess import call
24
24
import sys
25
25
 
 
26
import bzrlib
26
27
import bzrlib.config as config
27
28
from bzrlib.errors import BzrError
28
29
 
96
97
        if infotext is not None and infotext != "":
97
98
            hasinfo = True
98
99
            msgfile = file(msgfilename, "w")
99
 
            msgfile.write("\n%s\n\n%s" % (ignoreline, infotext))
 
100
            msgfile.write("\n\n%s\n\n%s" % (ignoreline,
 
101
                infotext.encode(bzrlib.user_encoding, 'replace')))
100
102
            msgfile.close()
101
103
        else:
102
104
            hasinfo = False
107
109
        started = False
108
110
        msg = []
109
111
        lastline, nlines = 0, 0
110
 
        for line in file(msgfilename, "r"):
 
112
        for line in codecs.open(msgfilename, 'r', bzrlib.user_encoding):
111
113
            stripped_line = line.strip()
112
114
            # strip empty line before the log message starts
113
115
            if not started: