Mercurial > hg
comparison contrib/shrink-revlog.py @ 11268:f73baa069113
Merge with stable
author | Martin Geisler <mg@aragost.com> |
---|---|
date | Wed, 02 Jun 2010 14:40:31 +0200 |
parents | cb0a7faa29ea d3ebb1a0bc49 |
children | 7b5d05e0fb1e |
comparison
equal
deleted
inserted
replaced
11266:2b440bb8a66b | 11268:f73baa069113 |
---|---|
252 if not opts.get('dry_run'): | 252 if not opts.get('dry_run'): |
253 # racy, both files cannot be renamed atomically | 253 # racy, both files cannot be renamed atomically |
254 # copy files | 254 # copy files |
255 util.os_link(indexfn, oldindexfn) | 255 util.os_link(indexfn, oldindexfn) |
256 ignoremissing(util.os_link)(datafn, olddatafn) | 256 ignoremissing(util.os_link)(datafn, olddatafn) |
257 | |
258 # mkstemp() creates files only readable by the owner | |
259 os.chmod(tmpindexfn, os.stat(indexfn).st_mode) | |
260 | |
257 # rename | 261 # rename |
258 util.rename(tmpindexfn, indexfn) | 262 util.rename(tmpindexfn, indexfn) |
259 try: | 263 try: |
264 os.chmod(tmpdatafn, os.stat(datafn).st_mode) | |
260 util.rename(tmpdatafn, datafn) | 265 util.rename(tmpdatafn, datafn) |
261 except OSError, inst: | 266 except OSError, inst: |
262 if inst.errno != errno.ENOENT: | 267 if inst.errno != errno.ENOENT: |
263 raise | 268 raise |
264 ignoremissing(os.unlink)(datafn) | 269 ignoremissing(os.unlink)(datafn) |