comparison mercurial/merge.py @ 18143:242d2f4ec01c

util: fold ENOENT check into unlinkpath, controlled by new ignoremissing flag Refactor a common pattern.
author Mads Kiilerich <madski@unity3d.com>
date Fri, 28 Dec 2012 11:55:57 +0100
parents 6c35b53cd28b
children 2fee5119099b
comparison
equal deleted inserted replaced
18142:11d1a9143adb 18143:242d2f4ec01c
380 repo.ui.note(_("removing %s\n") % f) 380 repo.ui.note(_("removing %s\n") % f)
381 audit(f) 381 audit(f)
382 if f == '.hgsubstate': # subrepo states need updating 382 if f == '.hgsubstate': # subrepo states need updating
383 subrepo.submerge(repo, wctx, mctx, wctx, overwrite) 383 subrepo.submerge(repo, wctx, mctx, wctx, overwrite)
384 try: 384 try:
385 util.unlinkpath(repo.wjoin(f)) 385 util.unlinkpath(repo.wjoin(f), ignoremissing=True)
386 except OSError, inst: 386 except OSError, inst:
387 if inst.errno != errno.ENOENT: 387 repo.ui.warn(_("update failed to remove %s: %s!\n") %
388 repo.ui.warn(_("update failed to remove %s: %s!\n") % 388 (f, inst.strerror))
389 (f, inst.strerror))
390 removed += 1 389 removed += 1
391 elif m == "m": # merge 390 elif m == "m": # merge
392 if f == '.hgsubstate': # subrepo states need updating 391 if f == '.hgsubstate': # subrepo states need updating
393 subrepo.submerge(repo, wctx, mctx, wctx.ancestor(mctx), 392 subrepo.submerge(repo, wctx, mctx, wctx.ancestor(mctx),
394 overwrite) 393 overwrite)