cubicweb/web/propertysheet.py
branch3.26
changeset 12288 2c582a242b66
parent 11965 fb03a4113979
child 12578 d06a2feae373
equal deleted inserted replaced
12287:547bb96ea2a8 12288:2c582a242b66
   107         else:
   107         else:
   108             tmpfd, tmpfile = tempfile.mkstemp(dir=rcachedir, prefix=osp.basename(cachefile))
   108             tmpfd, tmpfile = tempfile.mkstemp(dir=rcachedir, prefix=osp.basename(cachefile))
   109             with os.fdopen(tmpfd, 'w') as stream:
   109             with os.fdopen(tmpfd, 'w') as stream:
   110                 stream.write(content)
   110                 stream.write(content)
   111             try:
   111             try:
       
   112                 mode = os.stat(sourcefile).st_mode
       
   113                 os.chmod(tmpfile, mode)
       
   114             except IOError:
       
   115                 self.warning('Cannot set access mode for %s; you may encouter '
       
   116                              'file permissions issues', cachefile)
       
   117             try:
   112                 os.rename(tmpfile, cachefile)
   118                 os.rename(tmpfile, cachefile)
   113             except OSError as err:
   119             except OSError as err:
   114                 if err.errno != errno.EEXIST:
   120                 if err.errno != errno.EEXIST:
   115                     raise
   121                     raise
   116                 # Under windows, os.rename won't overwrite an existing file
   122                 # Under windows, os.rename won't overwrite an existing file