Mercurial > hg
comparison mercurial/subrepo.py @ 24858:a99931201d1b stable
subrepo: don't write .hgsubstate lines with empty subrepo state (issue4622)
The '' that is used to represent the state of a not-yet-committed
subrepo cannot be written to the file, because the code that parses
the file splits on ' ' and expects two parts.
Given that the .hgsubstate file is automatically rewritten on commit, it seems
a little strange that the file is written out during a merge.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Fri, 24 Apr 2015 23:23:55 -0400 |
parents | 56e15db9109f |
children | 5135c2be6959 |
comparison
equal
deleted
inserted
replaced
24857:d8505bfe4825 | 24858:a99931201d1b |
---|---|
151 | 151 |
152 return state | 152 return state |
153 | 153 |
154 def writestate(repo, state): | 154 def writestate(repo, state): |
155 """rewrite .hgsubstate in (outer) repo with these subrepo states""" | 155 """rewrite .hgsubstate in (outer) repo with these subrepo states""" |
156 lines = ['%s %s\n' % (state[s][1], s) for s in sorted(state)] | 156 lines = ['%s %s\n' % (state[s][1], s) for s in sorted(state) |
157 if state[s][1] != nullstate[1]] | |
157 repo.wwrite('.hgsubstate', ''.join(lines), '') | 158 repo.wwrite('.hgsubstate', ''.join(lines), '') |
158 | 159 |
159 def submerge(repo, wctx, mctx, actx, overwrite): | 160 def submerge(repo, wctx, mctx, actx, overwrite): |
160 """delegated from merge.applyupdates: merging of .hgsubstate file | 161 """delegated from merge.applyupdates: merging of .hgsubstate file |
161 in working context, merging context and ancestor context""" | 162 in working context, merging context and ancestor context""" |