@@ -2377,7 +2377,7 @@ def node_pthread_detection():
23772377def modularize ():
23782378 global final_js
23792379 logger .debug (f'Modularizing, assigning to var { settings .EXPORT_NAME } ' )
2380- src = read_file (final_js )
2380+ generated_js = read_file (final_js )
23812381
23822382 # When targetting node and ES6 we use `await import ..` in the generated code
23832383 # so the outer function needs to be marked as async.
@@ -2390,35 +2390,30 @@ def modularize():
23902390 diagnostics .warning ('emcc' , 'EXPORT_NAME should not be named "config" when targeting Safari' )
23912391
23922392 if settings .MODULARIZE == 'instance' :
2393- src = '''
2393+ wrapper_funcion = '''
23942394export default async function init(moduleArg = {}) {
23952395 var moduleRtn;
23962396
2397- %(src )s
2397+ %(generated_js )s
23982398
23992399 return await moduleRtn;
24002400}
2401- ''' % {
2402- 'src' : src ,
2403- }
2401+ ''' % {'generated_js' : generated_js }
24042402 else :
2405- src = '''
2403+ wrapper_funcion = '''
24062404%(maybe_async)sfunction(moduleArg = {}) {
24072405 var moduleRtn;
24082406
2409- %(src )s
2407+ %(generated_js )s
24102408
24112409 return moduleRtn;
24122410}
2413- ''' % {
2414- 'maybe_async' : async_emit ,
2415- 'src' : src ,
2416- }
2411+ ''' % {'maybe_async' : async_emit , 'generated_js' : generated_js }
24172412
24182413 if settings .MINIMAL_RUNTIME and not settings .PTHREADS :
24192414 # Single threaded MINIMAL_RUNTIME programs do not need access to
24202415 # document.currentScript, so a simple export declaration is enough.
2421- src = '/** @nocollapse */ var %s = %s' % ( settings .EXPORT_NAME , src )
2416+ src = f '/** @nocollapse */ var { settings .EXPORT_NAME } = { wrapper_funcion } ;'
24222417 else :
24232418 script_url_node = ''
24242419 # When MODULARIZE this JS may be executed later,
@@ -2436,24 +2431,24 @@ def modularize():
24362431 src = '''\
24372432 var _scriptName = %(script_url)s;
24382433 %(script_url_node)s
2439- %(src )s
2434+ %(wrapper_funcion )s
24402435''' % {
24412436 'script_url' : script_url ,
24422437 'script_url_node' : script_url_node ,
2443- 'src ' : src ,
2438+ 'wrapper_funcion ' : wrapper_funcion ,
24442439 }
24452440 else :
24462441 src = '''\
24472442 var %(EXPORT_NAME)s = (() => {
24482443 var _scriptName = %(script_url)s;
24492444 %(script_url_node)s
2450- return (%(src )s);
2445+ return (%(wrapper_funcion )s);
24512446})();
24522447''' % {
24532448 'EXPORT_NAME' : settings .EXPORT_NAME ,
24542449 'script_url' : script_url ,
24552450 'script_url_node' : script_url_node ,
2456- 'src ' : src ,
2451+ 'wrapper_funcion ' : wrapper_funcion ,
24572452 }
24582453
24592454 # Given the async nature of how the Module function and Module object
0 commit comments