From c47810c33b101907efb2ad53de8c1b4465b271e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Verschelde?= Date: Fri, 3 Jan 2025 22:44:20 +0100 Subject: [PATCH] SCons: Ensure written files are properly flushed/closed Also add `core/method_bind_ext.inc` to `.gitignore`. (cherry picked from commit ad2fb7d93bf0fc0d1266dc7267a074f2293d48d0) --- methods.py | 6 +++++- platform/android/SCsub | 1 + tools/docdump/doc_merge.py | 2 +- tools/docdump/makedoku.py | 10 +++++----- tools/docdump/makemd.py | 2 ++ tools/editor/SCsub | 1 + tools/export/blender25/io_scene_dae/export_dae.py | 1 + tools/glwrapper/makewrapper.py | 6 +++--- 8 files changed, 19 insertions(+), 10 deletions(-) diff --git a/methods.py b/methods.py index 9608b1b61d7..f9e334a1d33 100755 --- a/methods.py +++ b/methods.py @@ -42,6 +42,7 @@ def build_shader_header( target, source, env ): line=fs.readline() fd.write(";\n") + fd.close() return 0 @@ -1098,6 +1099,7 @@ def update_version(): f.write("#define VERSION_MINOR "+str(version.minor)+"\n") f.write("#define VERSION_REVISION "+str(rev)+"\n") f.write("#define VERSION_STATUS "+str(version.status)+"\n") + f.close() def parse_cg_file(fname, uniforms, sizes, conditionals): @@ -1167,8 +1169,8 @@ def build_cg_shader(sname): fd.write('\t\tVP_%s,\n' % vp_uniforms[i].upper()) fd.write("\t};\n"); + fd.close() - import glob def detect_modules(): @@ -1219,6 +1221,7 @@ void unregister_module_types() { f=open("modules/register_module_types.cpp","wb") f.write(modules_cpp) + f.close() return module_list @@ -1323,6 +1326,7 @@ def save_active_platforms(apnames,ap): wf = x+"/logo.h" logow = open(wf,"wb") logow.write(str) + logow.close() def colored(sys,env): diff --git a/platform/android/SCsub b/platform/android/SCsub index 6feeb8b3655..bdafa020f61 100644 --- a/platform/android/SCsub +++ b/platform/android/SCsub @@ -59,6 +59,7 @@ manifest = manifest.replace("$$ADD_APPLICATION_CHUNKS$$",env.android_manifest_ch manifest = manifest.replace("$$ADD_PERMISSION_CHUNKS$$",env.android_permission_chunk) manifest = manifest.replace("$$ADD_APPATTRIBUTE_CHUNKS$$",env.android_appattributes_chunk) pp_baseout.write( manifest ) +pp_baseout.close() for x in env.android_source_files: diff --git a/tools/docdump/doc_merge.py b/tools/docdump/doc_merge.py index 872f38ed870..a90588b4d04 100644 --- a/tools/docdump/doc_merge.py +++ b/tools/docdump/doc_merge.py @@ -205,4 +205,4 @@ for c in list(new_doc): write_class(c) write_string(f,'\n') - +f.close() diff --git a/tools/docdump/makedoku.py b/tools/docdump/makedoku.py index e8207715fe7..36a7cbb98f8 100644 --- a/tools/docdump/makedoku.py +++ b/tools/docdump/makedoku.py @@ -75,8 +75,9 @@ def make_class_list(class_list,columns): s+="\n" f.write(s) - - + f.close() + + def dokuize_text(txt): return txt @@ -220,7 +221,7 @@ def make_method(f,name,m,declare,event=False): s+=" "+m.attrib["qualifiers"] f.write(s+"\n") - + f.close() def make_doku_class(node): @@ -302,8 +303,7 @@ def make_doku_class(node): f.write(dokuize_text(d.text.strip())) f.write("\n") - - + f.close() """ diff --git a/tools/docdump/makemd.py b/tools/docdump/makemd.py index f85d145d5e5..5ab345d6d23 100644 --- a/tools/docdump/makemd.py +++ b/tools/docdump/makemd.py @@ -85,6 +85,7 @@ def make_class_list(class_list, columns): s += '\n' f.write(s) + f.close() def dokuize_text(txt): @@ -317,6 +318,7 @@ def make_doku_class(node): f.write('\n') f.write(dokuize_text(d.text.strip())) f.write('\n') + f.close() for file in input_list: diff --git a/tools/editor/SCsub b/tools/editor/SCsub index 73ec5301774..39719540559 100644 --- a/tools/editor/SCsub +++ b/tools/editor/SCsub @@ -23,6 +23,7 @@ def make_doc_header(target,source,env): g.write(str(ord(buf[i]))+",\n") g.write("};\n") g.write("#endif") + g.close() diff --git a/tools/export/blender25/io_scene_dae/export_dae.py b/tools/export/blender25/io_scene_dae/export_dae.py index 492a737e23e..58821da5dd6 100644 --- a/tools/export/blender25/io_scene_dae/export_dae.py +++ b/tools/export/blender25/io_scene_dae/export_dae.py @@ -1656,6 +1656,7 @@ class DaeExporter: f.write(bytes('\t\n',"UTF-8")) f.write(bytes('\n',"UTF-8")) f.write(bytes('\n',"UTF-8")) + f.close() return True def __init__(self,path,kwargs,operator): diff --git a/tools/glwrapper/makewrapper.py b/tools/glwrapper/makewrapper.py index cde976d5f93..537487275a1 100644 --- a/tools/glwrapper/makewrapper.py +++ b/tools/glwrapper/makewrapper.py @@ -157,6 +157,7 @@ f.write("void glWrapperInit( GLWrapperFuncPtr (*wrapperFunc)(const char*) );\n") f.write("#ifdef __cplusplus\n}\n#endif\n") f.write("#endif\n\n") +f.close() f=open("glwrapper.c","w") @@ -177,8 +178,7 @@ for x in functions: f.write("\n\n") f.write("}\n") f.write("\n\n") - - +f.close() - \ No newline at end of file +