Use std::vector::data()
This commit is contained in:
		
							parent
							
								
									f2b67fbf2a
								
							
						
					
					
						commit
						7c4501886d
					
				
					 3 changed files with 8 additions and 12 deletions
				
			
		| 
						 | 
				
			
			@ -2305,7 +2305,6 @@ void DerivationGoal::runChild()
 | 
			
		|||
        Strings envStrs;
 | 
			
		||||
        foreach (Environment::const_iterator, i, env)
 | 
			
		||||
            envStrs.push_back(rewriteHashes(i->first + "=" + i->second, rewritesToTmp));
 | 
			
		||||
        auto envArr = stringsToCharPtrs(envStrs);
 | 
			
		||||
 | 
			
		||||
        /* If we are running in `build-users' mode, then switch to the
 | 
			
		||||
           user we allocated above.  Make sure that we drop all root
 | 
			
		||||
| 
						 | 
				
			
			@ -2452,7 +2451,6 @@ void DerivationGoal::runChild()
 | 
			
		|||
 | 
			
		||||
        foreach (Strings::iterator, i, drv.args)
 | 
			
		||||
            args.push_back(rewriteHashes(*i, rewritesToTmp));
 | 
			
		||||
        auto argArr = stringsToCharPtrs(args);
 | 
			
		||||
 | 
			
		||||
        restoreSIGPIPE();
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -2466,7 +2464,7 @@ void DerivationGoal::runChild()
 | 
			
		|||
        }
 | 
			
		||||
 | 
			
		||||
        /* Execute the program.  This should not return. */
 | 
			
		||||
        execve(builder, (char * *) &argArr[0], (char * *) &envArr[0]);
 | 
			
		||||
        execve(builder, stringsToCharPtrs(args).data(), stringsToCharPtrs(envStrs).data());
 | 
			
		||||
 | 
			
		||||
        throw SysError(format("executing ‘%1%’") % drv.builder);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -3094,7 +3092,6 @@ void SubstitutionGoal::tryToRun()
 | 
			
		|||
    args.push_back("--substitute");
 | 
			
		||||
    args.push_back(storePath);
 | 
			
		||||
    args.push_back(destPath);
 | 
			
		||||
    auto argArr = stringsToCharPtrs(args);
 | 
			
		||||
 | 
			
		||||
    /* Fork the substitute program. */
 | 
			
		||||
    pid = startProcess([&]() {
 | 
			
		||||
| 
						 | 
				
			
			@ -3104,7 +3101,7 @@ void SubstitutionGoal::tryToRun()
 | 
			
		|||
        if (dup2(outPipe.writeSide, STDOUT_FILENO) == -1)
 | 
			
		||||
            throw SysError("cannot dup output pipe into stdout");
 | 
			
		||||
 | 
			
		||||
        execv(sub.c_str(), (char * *) &argArr[0]);
 | 
			
		||||
        execv(sub.c_str(), stringsToCharPtrs(args).data());
 | 
			
		||||
 | 
			
		||||
        throw SysError(format("executing ‘%1%’") % sub);
 | 
			
		||||
    });
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue