@@ -76,13 +76,16 @@ bool __sanitizer_symbolize_code(const char *ModuleName, uint64_t ModuleOffset,
76
76
auto ResOrErr = getDefaultSymbolizer ()->symbolizeInlinedCode (
77
77
ModuleName,
78
78
{ModuleOffset, llvm::object::SectionedAddress::UndefSection});
79
- Printer->print (Request,
80
- ResOrErr ? ResOrErr.get () : llvm::DIInliningInfo ());
79
+ if (!ResOrErr)
80
+ return false ;
81
+ Printer->print (Request, ResOrErr.get ());
81
82
} else {
82
83
auto ResOrErr = getDefaultSymbolizer ()->symbolizeCode (
83
84
ModuleName,
84
85
{ModuleOffset, llvm::object::SectionedAddress::UndefSection});
85
- Printer->print (Request, ResOrErr ? ResOrErr.get () : llvm::DILineInfo ());
86
+ if (!ResOrErr)
87
+ return false ;
88
+ Printer->print (Request, ResOrErr.get ());
86
89
}
87
90
}
88
91
return __sanitizer::internal_snprintf (Buffer, MaxLength, " %s" ,
@@ -104,7 +107,9 @@ bool __sanitizer_symbolize_data(const char *ModuleName, uint64_t ModuleOffset,
104
107
auto ResOrErr = getDefaultSymbolizer ()->symbolizeData (
105
108
ModuleName,
106
109
{ModuleOffset, llvm::object::SectionedAddress::UndefSection});
107
- Printer->print (Request, ResOrErr ? ResOrErr.get () : llvm::DIGlobal ());
110
+ if (!ResOrErr)
111
+ return false ;
112
+ Printer->print (Request, ResOrErr.get ());
108
113
}
109
114
return __sanitizer::internal_snprintf (Buffer, MaxLength, " %s" ,
110
115
Result.c_str ()) < MaxLength;
0 commit comments