]> granicus.if.org Git - clang/commitdiff
Don't crash in InitializePreprocessor() when there is no valid PTHManager. Fixes...
authorTed Kremenek <kremenek@apple.com>
Mon, 28 Jun 2010 20:32:40 +0000 (20:32 +0000)
committerTed Kremenek <kremenek@apple.com>
Mon, 28 Jun 2010 20:32:40 +0000 (20:32 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107061 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Frontend/InitPreprocessor.cpp

index c9c76e5f1f3b08d24fc21f6805fce8c0b0dda4fc..349dd7bf985a65bfb1d8e377e11148bc74a32ec0 100644 (file)
@@ -84,7 +84,8 @@ static void AddImplicitIncludePTH(MacroBuilder &Builder, Preprocessor &PP,
                                   llvm::StringRef ImplicitIncludePTH) {
   PTHManager *P = PP.getPTHManager();
   assert(P && "No PTHManager.");
-  const char *OriginalFile = P->getOriginalSourceFile();
+  // Null check 'P' in the corner case where it couldn't be created.
+  const char *OriginalFile = P ? P->getOriginalSourceFile() : 0;
 
   if (!OriginalFile) {
     PP.getDiagnostics().Report(diag::err_fe_pth_file_has_no_source_header)