| Index: chrome/browser/crash_handler_host_linux.h
|
| diff --git a/chrome/browser/crash_handler_host_linux.h b/chrome/browser/crash_handler_host_linux.h
|
| deleted file mode 100644
|
| index 55ef624ee3d5706aa4cc923fe638ec9f1bf6eb65..0000000000000000000000000000000000000000
|
| --- a/chrome/browser/crash_handler_host_linux.h
|
| +++ /dev/null
|
| @@ -1,184 +0,0 @@
|
| -// Copyright (c) 2011 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#ifndef CHROME_BROWSER_CRASH_HANDLER_HOST_LINUX_H_
|
| -#define CHROME_BROWSER_CRASH_HANDLER_HOST_LINUX_H_
|
| -#pragma once
|
| -
|
| -#include "base/compiler_specific.h"
|
| -#include "base/message_loop.h"
|
| -
|
| -#if defined(USE_LINUX_BREAKPAD)
|
| -#include <sys/types.h>
|
| -
|
| -#include <string>
|
| -
|
| -#include "base/memory/scoped_ptr.h"
|
| -
|
| -class BreakpadInfo;
|
| -
|
| -namespace base {
|
| -class Thread;
|
| -}
|
| -#endif // defined(USE_LINUX_BREAKPAD)
|
| -
|
| -template <typename T> struct DefaultSingletonTraits;
|
| -
|
| -// This is the base class for singleton objects which crash dump renderers and
|
| -// plugins on Linux. We perform the crash dump from the browser because it
|
| -// allows us to be outside the sandbox.
|
| -//
|
| -// PluginCrashHandlerHostLinux and RendererCrashHandlerHostLinux are singletons
|
| -// that handle plugin and renderer crashes, respectively.
|
| -//
|
| -// Processes signal that they need to be dumped by sending a datagram over a
|
| -// UNIX domain socket. All processes of the same type share the client end of
|
| -// this socket which is installed in their descriptor table before exec.
|
| -class CrashHandlerHostLinux : public MessageLoopForIO::Watcher,
|
| - public MessageLoop::DestructionObserver {
|
| - public:
|
| - // Get the file descriptor which processes should be given in order to signal
|
| - // crashes to the browser.
|
| - int GetDeathSignalSocket() const {
|
| - return process_socket_;
|
| - }
|
| -
|
| - // MessagePumbLibevent::Watcher impl:
|
| - virtual void OnFileCanWriteWithoutBlocking(int fd) OVERRIDE;
|
| - virtual void OnFileCanReadWithoutBlocking(int fd) OVERRIDE;
|
| -
|
| - // MessageLoop::DestructionObserver impl:
|
| - virtual void WillDestroyCurrentMessageLoop() OVERRIDE;
|
| -
|
| -#if defined(USE_LINUX_BREAKPAD)
|
| - // Whether we are shutting down or not.
|
| - bool IsShuttingDown() const;
|
| -#endif
|
| -
|
| - protected:
|
| - CrashHandlerHostLinux();
|
| - virtual ~CrashHandlerHostLinux();
|
| -
|
| -#if defined(USE_LINUX_BREAKPAD)
|
| - // Only called in concrete subclasses.
|
| - void InitCrashUploaderThread();
|
| -
|
| - std::string process_type_;
|
| -#endif
|
| -
|
| - private:
|
| - void Init();
|
| -
|
| -#if defined(USE_LINUX_BREAKPAD)
|
| - // This is here on purpose to make CrashHandlerHostLinux abstract.
|
| - virtual void SetProcessType() = 0;
|
| -
|
| - // Do work on the FILE thread for OnFileCanReadWithoutBlocking().
|
| - void WriteDumpFile(BreakpadInfo* info,
|
| - pid_t crashing_pid,
|
| - char* crash_context,
|
| - int signal_fd);
|
| -
|
| - // Continue OnFileCanReadWithoutBlocking()'s work on the IO thread.
|
| - void QueueCrashDumpTask(BreakpadInfo* info, int signal_fd);
|
| -#endif
|
| -
|
| - int process_socket_;
|
| - int browser_socket_;
|
| -
|
| -#if defined(USE_LINUX_BREAKPAD)
|
| - MessageLoopForIO::FileDescriptorWatcher file_descriptor_watcher_;
|
| - scoped_ptr<base::Thread> uploader_thread_;
|
| - bool shutting_down_;
|
| -#endif
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(CrashHandlerHostLinux);
|
| -};
|
| -
|
| -class ExtensionCrashHandlerHostLinux : public CrashHandlerHostLinux {
|
| - public:
|
| - // Returns the singleton instance.
|
| - static ExtensionCrashHandlerHostLinux* GetInstance();
|
| -
|
| - private:
|
| - friend struct DefaultSingletonTraits<ExtensionCrashHandlerHostLinux>;
|
| - ExtensionCrashHandlerHostLinux();
|
| - virtual ~ExtensionCrashHandlerHostLinux();
|
| -
|
| -#if defined(USE_LINUX_BREAKPAD)
|
| - virtual void SetProcessType() OVERRIDE;
|
| -#endif
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(ExtensionCrashHandlerHostLinux);
|
| -};
|
| -
|
| -class GpuCrashHandlerHostLinux : public CrashHandlerHostLinux {
|
| - public:
|
| - // Returns the singleton instance.
|
| - static GpuCrashHandlerHostLinux* GetInstance();
|
| -
|
| - private:
|
| - friend struct DefaultSingletonTraits<GpuCrashHandlerHostLinux>;
|
| - GpuCrashHandlerHostLinux();
|
| - virtual ~GpuCrashHandlerHostLinux();
|
| -
|
| -#if defined(USE_LINUX_BREAKPAD)
|
| - virtual void SetProcessType() OVERRIDE;
|
| -#endif
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(GpuCrashHandlerHostLinux);
|
| -};
|
| -
|
| -class PluginCrashHandlerHostLinux : public CrashHandlerHostLinux {
|
| - public:
|
| - // Returns the singleton instance.
|
| - static PluginCrashHandlerHostLinux* GetInstance();
|
| -
|
| - private:
|
| - friend struct DefaultSingletonTraits<PluginCrashHandlerHostLinux>;
|
| - PluginCrashHandlerHostLinux();
|
| - virtual ~PluginCrashHandlerHostLinux();
|
| -
|
| -#if defined(USE_LINUX_BREAKPAD)
|
| - virtual void SetProcessType() OVERRIDE;
|
| -#endif
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(PluginCrashHandlerHostLinux);
|
| -};
|
| -
|
| -class PpapiCrashHandlerHostLinux : public CrashHandlerHostLinux {
|
| - public:
|
| - // Returns the singleton instance.
|
| - static PpapiCrashHandlerHostLinux* GetInstance();
|
| -
|
| - private:
|
| - friend struct DefaultSingletonTraits<PpapiCrashHandlerHostLinux>;
|
| - PpapiCrashHandlerHostLinux();
|
| - virtual ~PpapiCrashHandlerHostLinux();
|
| -
|
| -#if defined(USE_LINUX_BREAKPAD)
|
| - virtual void SetProcessType() OVERRIDE;
|
| -#endif
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(PpapiCrashHandlerHostLinux);
|
| -};
|
| -
|
| -class RendererCrashHandlerHostLinux : public CrashHandlerHostLinux {
|
| - public:
|
| - // Returns the singleton instance.
|
| - static RendererCrashHandlerHostLinux* GetInstance();
|
| -
|
| - private:
|
| - friend struct DefaultSingletonTraits<RendererCrashHandlerHostLinux>;
|
| - RendererCrashHandlerHostLinux();
|
| - virtual ~RendererCrashHandlerHostLinux();
|
| -
|
| -#if defined(USE_LINUX_BREAKPAD)
|
| - virtual void SetProcessType() OVERRIDE;
|
| -#endif
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(RendererCrashHandlerHostLinux);
|
| -};
|
| -
|
| -#endif // CHROME_BROWSER_CRASH_HANDLER_HOST_LINUX_H_
|
|
|