@@ -913,7 +913,6 @@ var AMDLoader;
913913 function ModuleManager ( scriptLoader , loaderAvailableTimestamp ) {
914914 if ( loaderAvailableTimestamp === void 0 ) { loaderAvailableTimestamp = 0 ; }
915915 this . _recorder = null ;
916- this . _completingQueue = null ;
917916 this . _loaderAvailableTimestamp = loaderAvailableTimestamp ;
918917 this . _moduleIdProvider = new ModuleIdProvider ( ) ;
919918 this . _config = new AMDLoader . Configuration ( ) ;
@@ -1371,86 +1370,70 @@ var AMDLoader;
13711370 this . _loadModule ( dependency . id ) ;
13721371 }
13731372 if ( module . unresolvedDependenciesCount === 0 ) {
1374- this . _onModuleComplete2 ( module ) ;
1373+ this . _onModuleComplete ( module ) ;
13751374 }
13761375 } ;
1377- ModuleManager . prototype . _onModuleComplete2 = function ( module ) {
1378- if ( this . _completingQueue !== null ) {
1379- // currently processing
1380- this . _completingQueue . push ( module ) ;
1381- return ;
1382- }
1383- this . _completingQueue = [ module ] ;
1384- this . _processCompletingQueue ( ) ;
1385- } ;
1386- ModuleManager . prototype . _processCompletingQueue = function ( ) {
1376+ ModuleManager . prototype . _onModuleComplete = function ( module ) {
13871377 var _this = this ;
13881378 var recorder = this . getRecorder ( ) ;
1389- var _loop_1 = function ( ) {
1390- var module_1 = this_1 . _completingQueue . shift ( ) ;
1391- if ( module_1 . isComplete ( ) ) {
1392- return "continue" ;
1393- }
1394- var dependencies = module_1 . dependencies ;
1395- var dependenciesValues = [ ] ;
1396- for ( var i = 0 , len = dependencies . length ; i < len ; i ++ ) {
1397- var dependency = dependencies [ i ] ;
1398- if ( dependency === RegularDependency . EXPORTS ) {
1399- dependenciesValues [ i ] = module_1 . exports ;
1400- continue ;
1401- }
1402- if ( dependency === RegularDependency . MODULE ) {
1403- dependenciesValues [ i ] = {
1404- id : module_1 . strId ,
1405- config : function ( ) {
1406- return _this . _config . getConfigForModule ( module_1 . strId ) ;
1407- }
1408- } ;
1409- continue ;
1410- }
1411- if ( dependency === RegularDependency . REQUIRE ) {
1412- dependenciesValues [ i ] = this_1 . _createRequire ( module_1 . moduleIdResolver ) ;
1413- continue ;
1414- }
1415- var dependencyModule = this_1 . _modules2 [ dependency . id ] ;
1416- if ( dependencyModule ) {
1417- dependenciesValues [ i ] = dependencyModule . exports ;
1418- continue ;
1419- }
1420- dependenciesValues [ i ] = null ;
1379+ if ( module . isComplete ( ) ) {
1380+ // already done
1381+ return ;
1382+ }
1383+ var dependencies = module . dependencies ;
1384+ var dependenciesValues = [ ] ;
1385+ for ( var i = 0 , len = dependencies . length ; i < len ; i ++ ) {
1386+ var dependency = dependencies [ i ] ;
1387+ if ( dependency === RegularDependency . EXPORTS ) {
1388+ dependenciesValues [ i ] = module . exports ;
1389+ continue ;
14211390 }
1422- module_1 . complete ( recorder , this_1 . _config , dependenciesValues ) ;
1423- // Fetch and clear inverse dependencies
1424- var inverseDeps = this_1 . _inverseDependencies2 [ module_1 . id ] ;
1425- this_1 . _inverseDependencies2 [ module_1 . id ] = null ;
1426- if ( inverseDeps ) {
1427- // Resolve one inverse dependency at a time, always
1428- // on the lookout for a completed module.
1429- for ( var i = 0 , len = inverseDeps . length ; i < len ; i ++ ) {
1430- var inverseDependencyId = inverseDeps [ i ] ;
1431- var inverseDependency = this_1 . _modules2 [ inverseDependencyId ] ;
1432- inverseDependency . unresolvedDependenciesCount -- ;
1433- if ( inverseDependency . unresolvedDependenciesCount === 0 ) {
1434- this_1 . _completingQueue . push ( inverseDependency ) ;
1391+ if ( dependency === RegularDependency . MODULE ) {
1392+ dependenciesValues [ i ] = {
1393+ id : module . strId ,
1394+ config : function ( ) {
1395+ return _this . _config . getConfigForModule ( module . strId ) ;
14351396 }
1436- }
1397+ } ;
1398+ continue ;
14371399 }
1438- var inversePluginDeps = this_1 . _inversePluginDependencies2 . get ( module_1 . id ) ;
1439- if ( inversePluginDeps ) {
1440- // This module is used as a plugin at least once
1441- // Fetch and clear these inverse plugin dependencies
1442- this_1 . _inversePluginDependencies2 . delete ( module_1 . id ) ;
1443- // Resolve plugin dependencies one at a time
1444- for ( var i = 0 , len = inversePluginDeps . length ; i < len ; i ++ ) {
1445- this_1 . _loadPluginDependency ( module_1 . exports , inversePluginDeps [ i ] ) ;
1400+ if ( dependency === RegularDependency . REQUIRE ) {
1401+ dependenciesValues [ i ] = this . _createRequire ( module . moduleIdResolver ) ;
1402+ continue ;
1403+ }
1404+ var dependencyModule = this . _modules2 [ dependency . id ] ;
1405+ if ( dependencyModule ) {
1406+ dependenciesValues [ i ] = dependencyModule . exports ;
1407+ continue ;
1408+ }
1409+ dependenciesValues [ i ] = null ;
1410+ }
1411+ module . complete ( recorder , this . _config , dependenciesValues ) ;
1412+ // Fetch and clear inverse dependencies
1413+ var inverseDeps = this . _inverseDependencies2 [ module . id ] ;
1414+ this . _inverseDependencies2 [ module . id ] = null ;
1415+ if ( inverseDeps ) {
1416+ // Resolve one inverse dependency at a time, always
1417+ // on the lookout for a completed module.
1418+ for ( var i = 0 , len = inverseDeps . length ; i < len ; i ++ ) {
1419+ var inverseDependencyId = inverseDeps [ i ] ;
1420+ var inverseDependency = this . _modules2 [ inverseDependencyId ] ;
1421+ inverseDependency . unresolvedDependenciesCount -- ;
1422+ if ( inverseDependency . unresolvedDependenciesCount === 0 ) {
1423+ this . _onModuleComplete ( inverseDependency ) ;
14461424 }
14471425 }
1448- } ;
1449- var this_1 = this ;
1450- while ( this . _completingQueue . length > 0 ) {
1451- _loop_1 ( ) ;
14521426 }
1453- this . _completingQueue = null ;
1427+ var inversePluginDeps = this . _inversePluginDependencies2 . get ( module . id ) ;
1428+ if ( inversePluginDeps ) {
1429+ // This module is used as a plugin at least once
1430+ // Fetch and clear these inverse plugin dependencies
1431+ this . _inversePluginDependencies2 . delete ( module . id ) ;
1432+ // Resolve plugin dependencies one at a time
1433+ for ( var i = 0 , len = inversePluginDeps . length ; i < len ; i ++ ) {
1434+ this . _loadPluginDependency ( module . exports , inversePluginDeps [ i ] ) ;
1435+ }
1436+ }
14541437 } ;
14551438 return ModuleManager ;
14561439 } ( ) ) ;
0 commit comments