1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/toolkit/crashreporter/breakpad-patches/11-readsymboldatainternal-proto.patch Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,50 @@ 1.4 +# HG changeset patch 1.5 +# User Julian Seward <jseward@acm.org> 1.6 +# Date 1365953823 -7200 1.7 +# Node ID 21d2964d1337c0fce7375025610298a818ddbd0f 1.8 +# Parent ef802a6418f25841880359e6dab3e8240bfd0821 1.9 +Bug 861141 - Connect Breakpad on Android to faulty.lib's mmap interface. r=ted. 1.10 +Adds a prototype for ReadSymbolDataInternal so it can be called from 1.11 +outside breakpad. 1.12 + 1.13 +diff --git src/common/linux/dump_symbols.h 1.14 +--- a/src/common/linux/dump_symbols.h 1.15 ++++ b/src/common/linux/dump_symbols.h 1.16 +@@ -36,16 +36,17 @@ 1.17 + #define COMMON_LINUX_DUMP_SYMBOLS_H__ 1.18 + 1.19 + #include <iostream> 1.20 + #include <string> 1.21 + #include <vector> 1.22 + 1.23 + #include "common/symbol_data.h" 1.24 + #include "common/using_std_string.h" 1.25 ++#include "google_breakpad/common/breakpad_types.h" 1.26 + 1.27 + namespace google_breakpad { 1.28 + 1.29 + class Module; 1.30 + 1.31 + // Find all the debugging information in OBJ_FILE, an ELF executable 1.32 + // or shared library, and write it to SYM_STREAM in the Breakpad symbol 1.33 + // file format. 1.34 +@@ -60,11 +61,19 @@ bool WriteSymbolFile(const string &obj_f 1.35 + // As above, but simply return the debugging information in MODULE 1.36 + // instead of writing it to a stream. The caller owns the resulting 1.37 + // Module object and must delete it when finished. 1.38 + bool ReadSymbolData(const string& obj_file, 1.39 + const std::vector<string>& debug_dirs, 1.40 + SymbolData symbol_data, 1.41 + Module** module); 1.42 + 1.43 ++// Same as ReadSymbolData, except don't try to open the file; instead 1.44 ++// just use the in-memory data (mapped image of it) located at OBJ_FILE. 1.45 ++bool ReadSymbolDataInternal(const uint8_t* obj_file, 1.46 ++ const string& obj_filename, 1.47 ++ const std::vector<string>& debug_dirs, 1.48 ++ SymbolData symbol_data, 1.49 ++ Module** module); 1.50 ++ 1.51 + } // namespace google_breakpad 1.52 + 1.53 + #endif // COMMON_LINUX_DUMP_SYMBOLS_H__