mirror of
https://github.com/tomahawk-player/tomahawk.git
synced 2025-08-21 21:25:52 +02:00
* Updated breakpad to latest version.
This commit is contained in:
@@ -42,7 +42,7 @@ class Minidump;
|
||||
class ProcessState;
|
||||
class SourceLineResolverInterface;
|
||||
class SymbolSupplier;
|
||||
class SystemInfo;
|
||||
struct SystemInfo;
|
||||
// Return type for Process()
|
||||
enum ProcessResult {
|
||||
PROCESS_OK, // The minidump was
|
||||
|
@@ -44,7 +44,7 @@ using std::string;
|
||||
|
||||
struct StackFrame;
|
||||
struct WindowsFrameInfo;
|
||||
struct CFIFrameInfo;
|
||||
class CFIFrameInfo;
|
||||
|
||||
class SourceLineResolverInterface {
|
||||
public:
|
||||
|
@@ -47,7 +47,7 @@
|
||||
namespace google_breakpad {
|
||||
|
||||
struct WindowsFrameInfo;
|
||||
struct CFIFrameInfo;
|
||||
class CFIFrameInfo;
|
||||
|
||||
struct StackFrameX86 : public StackFrame {
|
||||
// ContextValidity has one entry for each relevant hardware pointer
|
||||
|
@@ -54,7 +54,7 @@ class MinidumpContext;
|
||||
class SourceLineResolverInterface;
|
||||
struct StackFrame;
|
||||
class SymbolSupplier;
|
||||
class SystemInfo;
|
||||
struct SystemInfo;
|
||||
|
||||
using std::set;
|
||||
|
||||
@@ -108,6 +108,15 @@ class Stackwalker {
|
||||
// Returns false otherwise.
|
||||
bool InstructionAddressSeemsValid(u_int64_t address);
|
||||
|
||||
template<typename InstructionType>
|
||||
bool ScanForReturnAddress(InstructionType location_start,
|
||||
InstructionType *location_found,
|
||||
InstructionType *ip_found) {
|
||||
const int kRASearchWords = 30;
|
||||
return ScanForReturnAddress(location_start, location_found, ip_found,
|
||||
kRASearchWords);
|
||||
}
|
||||
|
||||
// Scan the stack starting at location_start, looking for an address
|
||||
// that looks like a valid instruction pointer. Addresses must
|
||||
// 1) be contained in the current stack memory
|
||||
@@ -120,10 +129,10 @@ class Stackwalker {
|
||||
template<typename InstructionType>
|
||||
bool ScanForReturnAddress(InstructionType location_start,
|
||||
InstructionType *location_found,
|
||||
InstructionType *ip_found) {
|
||||
const int kRASearchWords = 30;
|
||||
InstructionType *ip_found,
|
||||
int searchwords) {
|
||||
for (InstructionType location = location_start;
|
||||
location <= location_start + kRASearchWords * sizeof(InstructionType);
|
||||
location <= location_start + searchwords * sizeof(InstructionType);
|
||||
location += sizeof(InstructionType)) {
|
||||
InstructionType ip;
|
||||
if (!memory_->GetMemoryAtAddress(location, &ip))
|
||||
|
@@ -39,7 +39,7 @@ namespace google_breakpad {
|
||||
|
||||
using std::string;
|
||||
class CodeModule;
|
||||
class SystemInfo;
|
||||
struct SystemInfo;
|
||||
|
||||
class SymbolSupplier {
|
||||
public:
|
||||
|
Reference in New Issue
Block a user