getsentry/symbolic

iOS Crashlytics: Can not Resolving compiler generated crashes

Doslin opened this issue · 2 comments

Environment

MacOS(14.1.1 (23B81))

What version are you running? Etc.

Steps to Reproduce

  1. use symbolicatecrash get converted report
    ./symbolicatecrash ./file-origin-crash-txt ./dSYMs.zip > file-crash-report-by-symbolicatecrash-log
    image

  2. use symbolic

fn test_lookup_compiler_generated_crashes() -> Result<(), Error> {
    let buffer = ByteView::open(        "/Users/doude/Downloads/Crash-20240229/test-compiler-generated/dSYMs/GPark.app.dSYM/Contents/Resources/DWARF/GPark",    )?;
    let object = Object::parse(&buffer)?;
    let mut buffer = Vec::new();
    let mut converter = SymCacheConverter::new();
    converter.process_object(&object)?;
    converter.serialize(&mut Cursor::new(&mut buffer))?;
    let symcache = SymCache::parse(&buffer)?;
    let symbols = &symcache.lookup(4486444 as u64).collect::<Vec<_>>()[0];
    let abs_path = symbols
        .file()
        .map(|f| f.full_path())
        .unwrap_or_else(|| "null content".into());
    println!("4486444 result {} {} ", abs_path, symbols.line());

    let symbols = &symcache.lookup(4484944 as u64).collect::<Vec<_>>()[0];
    let abs_path = symbols
        .file()
        .map(|f| f.full_path())
        .unwrap_or_else(|| "null content".into());
    println!("4484944 result {} {} ", abs_path, symbols.line());

    Ok(())
}

image

Expected Result

compiler generated would be symbol successful with line 70

Actual Result

What actually happened. Maybe a screenshot/recording? Maybe some logs?

I don’t think the line number of <compiler generated> code really matters. Does it at least output the correct function name (adjusted for Swift mangling)?