mercurial/util.py
changeset 38197 aac4be30e250
parent 38016 59f1e33f74a6
child 38323 565074cc9ac6
equal deleted inserted replaced
38196:b39958d6b81b 38197:aac4be30e250
    29 import re as remod
    29 import re as remod
    30 import shutil
    30 import shutil
    31 import socket
    31 import socket
    32 import stat
    32 import stat
    33 import sys
    33 import sys
    34 import tempfile
       
    35 import time
    34 import time
    36 import traceback
    35 import traceback
    37 import warnings
    36 import warnings
    38 import zlib
    37 import zlib
    39 
    38 
  1891 
  1890 
  1892     # testfile may be open, so we need a separate file for checking to
  1891     # testfile may be open, so we need a separate file for checking to
  1893     # work around issue2543 (or testfile may get lost on Samba shares)
  1892     # work around issue2543 (or testfile may get lost on Samba shares)
  1894     f1, f2, fp = None, None, None
  1893     f1, f2, fp = None, None, None
  1895     try:
  1894     try:
  1896         fd, f1 = tempfile.mkstemp(prefix='.%s-' % os.path.basename(testfile),
  1895         fd, f1 = pycompat.mkstemp(prefix='.%s-' % os.path.basename(testfile),
  1897                                   suffix='1~', dir=os.path.dirname(testfile))
  1896                                   suffix='1~', dir=os.path.dirname(testfile))
  1898         os.close(fd)
  1897         os.close(fd)
  1899         f2 = '%s2~' % f1[:-2]
  1898         f2 = '%s2~' % f1[:-2]
  1900 
  1899 
  1901         oslink(f1, f2)
  1900         oslink(f1, f2)
  1937     can use emptyok=True as an optimization.
  1936     can use emptyok=True as an optimization.
  1938 
  1937 
  1939     Returns the name of the temporary file.
  1938     Returns the name of the temporary file.
  1940     """
  1939     """
  1941     d, fn = os.path.split(name)
  1940     d, fn = os.path.split(name)
  1942     fd, temp = tempfile.mkstemp(prefix='.%s-' % fn, suffix='~', dir=d)
  1941     fd, temp = pycompat.mkstemp(prefix='.%s-' % fn, suffix='~', dir=d)
  1943     os.close(fd)
  1942     os.close(fd)
  1944     # Temporary files are created with mode 0600, which is usually not
  1943     # Temporary files are created with mode 0600, which is usually not
  1945     # what we want.  If the original file already exists, just copy
  1944     # what we want.  If the original file already exists, just copy
  1946     # its mode.  Otherwise, manually obey umask.
  1945     # its mode.  Otherwise, manually obey umask.
  1947     copymode(name, temp, createmode)
  1946     copymode(name, temp, createmode)