Fix #1060: Could crash if using --source-entry-point with -e; fixed.
This commit is contained in:
		
							parent
							
								
									5a57ca680f
								
							
						
					
					
						commit
						3693e631f5
					
				@ -781,8 +781,12 @@ void CompileAndLinkShaderUnits(std::vector<ShaderCompUnit> compUnits)
 | 
			
		||||
        shader->setStringsWithLengthsAndNames(compUnit.text, NULL, compUnit.fileNameList, compUnit.count);
 | 
			
		||||
        if (entryPointName) // HLSL todo: this needs to be tracked per compUnits
 | 
			
		||||
            shader->setEntryPoint(entryPointName);
 | 
			
		||||
        if (sourceEntryPointName)
 | 
			
		||||
        if (sourceEntryPointName) {
 | 
			
		||||
            if (entryPointName == nullptr)
 | 
			
		||||
                printf("Warning: Changing source entry point name without setting an entry-point name.\n"
 | 
			
		||||
                       "Use '-e <name>'.\n");
 | 
			
		||||
            shader->setSourceEntryPoint(sourceEntryPointName);
 | 
			
		||||
        }
 | 
			
		||||
        if (UserPreamble.isSet())
 | 
			
		||||
            shader->setPreamble(UserPreamble.get());
 | 
			
		||||
        shader->addProcesses(Processes);
 | 
			
		||||
 | 
			
		||||
@ -152,7 +152,7 @@ public:
 | 
			
		||||
    {
 | 
			
		||||
        // Replace the entry point name given in the shader with the real entry point name,
 | 
			
		||||
        // if there is a substitution.
 | 
			
		||||
        if (name != nullptr && *name == sourceEntryPointName)
 | 
			
		||||
        if (name != nullptr && *name == sourceEntryPointName && intermediate.getEntryPointName().size() > 0)
 | 
			
		||||
            name = NewPoolTString(intermediate.getEntryPointName().c_str());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user