mirror of https://github.com/webpack/webpack.git
				
				
				
			Merge pull request #5595 from filipesilva/fix-deopts
fix: replace for..of to prevent v8 deoptimization
This commit is contained in:
		
						commit
						b75b20b416
					
				|  | @ -96,7 +96,8 @@ class SourceMapDevToolPlugin { | ||||||
| 									return module || source; | 									return module || source; | ||||||
| 								}); | 								}); | ||||||
| 
 | 
 | ||||||
| 								for(const module of modules) { | 								for(let idx = 0; idx < modules.length; idx++) { | ||||||
|  | 									const module = modules[idx]; | ||||||
| 									if(!moduleToSourceNameMapping.get(module)) { | 									if(!moduleToSourceNameMapping.get(module)) { | ||||||
| 										moduleToSourceNameMapping.set(module, ModuleFilenameHelpers.createFilename(module, moduleFilenameTemplate, requestShortener)); | 										moduleToSourceNameMapping.set(module, ModuleFilenameHelpers.createFilename(module, moduleFilenameTemplate, requestShortener)); | ||||||
| 									} | 									} | ||||||
|  | @ -121,7 +122,8 @@ class SourceMapDevToolPlugin { | ||||||
| 				}); | 				}); | ||||||
| 
 | 
 | ||||||
| 				// find modules with conflicting source names
 | 				// find modules with conflicting source names
 | ||||||
| 				for(const module of allModules) { | 				for(let idx = 0; idx < allModules.length; idx++) { | ||||||
|  | 					const module = allModules[idx]; | ||||||
| 					let sourceName = moduleToSourceNameMapping.get(module); | 					let sourceName = moduleToSourceNameMapping.get(module); | ||||||
| 					let hasName = conflictDetectionSet.has(sourceName); | 					let hasName = conflictDetectionSet.has(sourceName); | ||||||
| 					if(!hasName) { | 					if(!hasName) { | ||||||
|  |  | ||||||
|  | @ -34,8 +34,8 @@ class HarmonyModulesHelpers { | ||||||
| 		const desc = depInQuestion.describeHarmonyExport(); | 		const desc = depInQuestion.describeHarmonyExport(); | ||||||
| 		if(!desc.exportedName) return true; | 		if(!desc.exportedName) return true; | ||||||
| 		let before = true; | 		let before = true; | ||||||
| 		for(const moduleDependency of module.dependencies) { | 		for(let idx = 0; idx < module.dependencies.length; idx++) { | ||||||
| 			const dep = moduleDependency; | 			const dep = module.dependencies[idx]; | ||||||
| 			if(dep === depInQuestion) { | 			if(dep === depInQuestion) { | ||||||
| 				before = false; | 				before = false; | ||||||
| 				continue; | 				continue; | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue