Bug 581341 - Part 1: Make crash report annotation work OOP and subsume existing workarounds. r=cjones
This commit is contained in:
@@ -65,6 +65,7 @@
|
||||
#include "mozilla/plugins/BrowserStreamChild.h"
|
||||
#include "mozilla/plugins/PluginStreamChild.h"
|
||||
#include "PluginIdentifierChild.h"
|
||||
#include "mozilla/dom/CrashReporterChild.h"
|
||||
|
||||
#include "nsNPAPIPlugin.h"
|
||||
|
||||
@@ -80,6 +81,8 @@
|
||||
#endif
|
||||
|
||||
using namespace mozilla::plugins;
|
||||
using mozilla::dom::CrashReporterChild;
|
||||
using mozilla::dom::PCrashReporterChild;
|
||||
|
||||
#if defined(XP_WIN)
|
||||
const PRUnichar * kFlashFullscreenClass = L"ShockwaveFlashFullScreen";
|
||||
@@ -263,6 +266,7 @@ PluginModuleChild::Init(const std::string& aPluginFilename,
|
||||
}
|
||||
#endif
|
||||
|
||||
CrashReporterChild::CreateCrashReporter(this);
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -575,7 +579,6 @@ PluginModuleChild::InitGraphics()
|
||||
// Do this after initializing GDK, or GDK will install its own handler.
|
||||
XRE_InstallX11ErrorHandler();
|
||||
#endif
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -689,6 +692,20 @@ PluginModuleChild::QuickExit()
|
||||
_exit(0);
|
||||
}
|
||||
|
||||
PCrashReporterChild*
|
||||
PluginModuleChild::AllocPCrashReporter(const mozilla::dom::NativeThreadId& id,
|
||||
const PRUint32& processType)
|
||||
{
|
||||
return new CrashReporterChild;
|
||||
}
|
||||
|
||||
bool
|
||||
PluginModuleChild::DeallocPCrashReporter(PCrashReporterChild* actor)
|
||||
{
|
||||
delete actor;
|
||||
return true;
|
||||
}
|
||||
|
||||
void
|
||||
PluginModuleChild::ActorDestroy(ActorDestroyReason why)
|
||||
{
|
||||
@@ -1773,17 +1790,11 @@ PluginModuleChild::AnswerNP_GetEntryPoints(NPError* _retval)
|
||||
}
|
||||
|
||||
bool
|
||||
PluginModuleChild::AnswerNP_Initialize(NativeThreadId* tid, NPError* _retval)
|
||||
PluginModuleChild::AnswerNP_Initialize(NPError* _retval)
|
||||
{
|
||||
PLUGIN_LOG_DEBUG_METHOD;
|
||||
AssertPluginThread();
|
||||
|
||||
#ifdef MOZ_CRASHREPORTER
|
||||
*tid = CrashReporter::CurrentThreadId();
|
||||
#else
|
||||
*tid = 0;
|
||||
#endif
|
||||
|
||||
#ifdef OS_WIN
|
||||
SetEventHooks();
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user