[PATCH] Fix a crash that occurs when PWD is invalid.

Andrew Trick atrick at apple.com
Mon Dec 9 12:42:41 PST 2013


On Dec 9, 2013, at 12:01 PM, Eric Christopher <echristo at gmail.com> wrote:

> Out of curiosity why isn't it able to get a compilation dir?

Probably one of these.

     The getcwd() function will fail if:

     [EACCES]           Read or search permission was denied for a component of the pathname.

     [ENOENT]           A component of the pathname no longer exists.

Phil might know for sure.

-Andy

> 
> -eric
> 
> On Mon, Dec 9, 2013 at 11:41 AM, Andrew Trick <atrick at apple.com> wrote:
>> MCJIT needs to be able to run in hostile environments, even when PWD
>> is invalid. There's no need to crash MCJIT in this case.
>> 
>> If we do want to guarantee valid CompilationDir, that should be done
>> only for clients of getCompilationDir(). This is as simple as checking
>> for an empty string.
>> 
>> The obvious fix is to simply leave MCContext's CompilationDir empty
>> when PWD can't be determined. The only behavioral difference would be
>> that EmitGenDwarfInfo would output an empty string when recording the
>> working dir for the assembly output.
>> 
>> 
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>> 




More information about the llvm-commits mailing list