mirror of https://github.com/python/cpython
macostools.copy() now has an optional forcetype flag, which sets the filetype. This is used by various tools to set the type to APPL when copying interpreter template files (Atmp filetype).
This commit is contained in:
parent
bb74f95821
commit
c1463c9870
|
@ -78,7 +78,7 @@ def touched_ae(dst):
|
|||
dir_fss = macfs.FSSpec((vRefNum, dirID, ''))
|
||||
f.update(dir_fss)
|
||||
|
||||
def copy(src, dst, createpath=0, copydates=1):
|
||||
def copy(src, dst, createpath=0, copydates=1, forcetype=None):
|
||||
"""Copy a file, including finder info, resource fork, etc"""
|
||||
if createpath:
|
||||
mkdirs(os.path.split(dst)[0])
|
||||
|
@ -106,6 +106,8 @@ def copy(src, dst, createpath=0, copydates=1):
|
|||
sf = srcfss.GetFInfo()
|
||||
df = dstfss.GetFInfo()
|
||||
df.Creator, df.Type = sf.Creator, sf.Type
|
||||
if forcetype != None:
|
||||
df.Type = forcetype
|
||||
df.Flags = (sf.Flags & (kIsStationary|kNameLocked|kHasBundle|kIsInvisible|kIsAlias))
|
||||
dstfss.SetFInfo(df)
|
||||
if copydates:
|
||||
|
|
|
@ -102,7 +102,7 @@ def buildcopy(top, dummy, list):
|
|||
for src, dst in list:
|
||||
src = os.path.join(top, src)
|
||||
dst = os.path.join(top, dst)
|
||||
macostools.copy(src, dst)
|
||||
macostools.copy(src, dst, forcetype="APPL")
|
||||
|
||||
def main():
|
||||
verbose = 0
|
||||
|
|
|
@ -167,7 +167,7 @@ def buildcopy(top, dummy, list):
|
|||
for src, dst in list:
|
||||
src = os.path.join(top, src)
|
||||
dst = os.path.join(top, dst)
|
||||
macostools.copy(src, dst)
|
||||
macostools.copy(src, dst, forcetype="APPL")
|
||||
|
||||
def handle_dialog(filename):
|
||||
"""Handle selection dialog, return list of selected items"""
|
||||
|
|
Loading…
Reference in New Issue