diff --git a/client/annotation.h b/client/annotation.h index edb963c2..8e7a3cbd 100644 --- a/client/annotation.h +++ b/client/annotation.h @@ -23,7 +23,6 @@ #include #include "base/check.h" -#include "base/macros.h" #include "base/numerics/safe_conversions.h" #include "base/strings/string_piece.h" #include "build/build_config.h" @@ -139,6 +138,9 @@ class Annotation { size_(0), type_(type) {} + Annotation(const Annotation&) = delete; + Annotation& operator=(const Annotation&) = delete; + //! \brief Specifies the number of bytes in \a value_ptr_ to include when //! generating a crash report. //! @@ -189,8 +191,6 @@ class Annotation { void* const value_ptr_; ValueSizeType size_; const Type type_; - - DISALLOW_COPY_AND_ASSIGN(Annotation); }; //! \brief An \sa Annotation that stores a `NUL`-terminated C-string value. @@ -214,6 +214,9 @@ class StringAnnotation : public Annotation { constexpr explicit StringAnnotation(const char name[]) : Annotation(Type::kString, name, value_), value_() {} + StringAnnotation(const StringAnnotation&) = delete; + StringAnnotation& operator=(const StringAnnotation&) = delete; + //! \brief Constructs a new StringAnnotation with the given \a name. //! //! This constructor takes the ArrayInitializerTag for use when @@ -262,8 +265,6 @@ class StringAnnotation : public Annotation { // This value is not `NUL`-terminated, since the size is stored by the base // annotation. char value_[MaxSize]; - - DISALLOW_COPY_AND_ASSIGN(StringAnnotation); }; } // namespace crashpad diff --git a/client/annotation_list.h b/client/annotation_list.h index 0b807688..02389530 100644 --- a/client/annotation_list.h +++ b/client/annotation_list.h @@ -15,7 +15,6 @@ #ifndef CRASHPAD_CLIENT_ANNOTATION_LIST_H_ #define CRASHPAD_CLIENT_ANNOTATION_LIST_H_ -#include "base/macros.h" #include "build/build_config.h" #include "client/annotation.h" @@ -35,6 +34,10 @@ class InProcessIntermediateDumpHandler; class AnnotationList { public: AnnotationList(); + + AnnotationList(const AnnotationList&) = delete; + AnnotationList& operator=(const AnnotationList&) = delete; + ~AnnotationList(); //! \brief Returns the instance of the list that has been registered on the @@ -102,8 +105,6 @@ class AnnotationList { // Dummy linked-list head and tail elements of \a Annotation::Type::kInvalid. Annotation head_; Annotation tail_; - - DISALLOW_COPY_AND_ASSIGN(AnnotationList); }; } // namespace crashpad diff --git a/client/crash_report_database.h b/client/crash_report_database.h index 2cec7260..19f1bf74 100644 --- a/client/crash_report_database.h +++ b/client/crash_report_database.h @@ -24,7 +24,6 @@ #include #include "base/files/file_path.h" -#include "base/macros.h" #include "util/file/file_io.h" #include "util/file/file_reader.h" #include "util/file/file_writer.h" @@ -111,6 +110,10 @@ class CrashReportDatabase { class NewReport { public: NewReport(); + + NewReport(const NewReport&) = delete; + NewReport& operator=(const NewReport&) = delete; + ~NewReport(); //! \brief An open FileWriter with which to write the report. @@ -152,8 +155,6 @@ class CrashReportDatabase { std::vector attachment_removers_; UUID uuid_; CrashReportDatabase* database_; - - DISALLOW_COPY_AND_ASSIGN(NewReport); }; //! \brief A crash report that is in the process of being uploaded. @@ -162,6 +163,10 @@ class CrashReportDatabase { class UploadReport : public Report { public: UploadReport(); + + UploadReport(const UploadReport&) = delete; + UploadReport& operator=(const UploadReport&) = delete; + virtual ~UploadReport(); //! \brief An open FileReader with which to read the report. @@ -189,8 +194,6 @@ class CrashReportDatabase { std::vector> attachment_readers_; std::map attachment_map_; bool report_metrics_; - - DISALLOW_COPY_AND_ASSIGN(UploadReport); }; //! \brief The result code for operations performed on a database. @@ -233,6 +236,9 @@ class CrashReportDatabase { kCannotRequestUpload, }; + CrashReportDatabase(const CrashReportDatabase&) = delete; + CrashReportDatabase& operator=(const CrashReportDatabase&) = delete; + virtual ~CrashReportDatabase() {} //! \brief Opens a database of crash reports, possibly creating it. @@ -422,8 +428,6 @@ class CrashReportDatabase { virtual OperationStatus RecordUploadAttempt(UploadReport* report, bool successful, const std::string& id) = 0; - - DISALLOW_COPY_AND_ASSIGN(CrashReportDatabase); }; } // namespace crashpad diff --git a/client/crash_report_database_generic.cc b/client/crash_report_database_generic.cc index aeaf2af4..a433a905 100644 --- a/client/crash_report_database_generic.cc +++ b/client/crash_report_database_generic.cc @@ -21,6 +21,7 @@ #include #include "base/logging.h" +#include "base/macros.h" #include "build/build_config.h" #include "client/settings.h" #include "util/file/directory_reader.h" @@ -100,6 +101,10 @@ struct ReportMetadata { class ScopedLockFile { public: ScopedLockFile() = default; + + ScopedLockFile(const ScopedLockFile&) = delete; + ScopedLockFile& operator=(const ScopedLockFile&) = delete; + ~ScopedLockFile() = default; ScopedLockFile& operator=(ScopedLockFile&& other) { @@ -158,8 +163,6 @@ class ScopedLockFile { private: ScopedRemoveFile lock_file_; - - DISALLOW_COPY_AND_ASSIGN(ScopedLockFile); }; off_t GetFileSize(const base::FilePath& filepath) { @@ -195,6 +198,11 @@ void AddAttachmentSize(const base::FilePath& attachments_dir, uint64_t* size) { class CrashReportDatabaseGeneric : public CrashReportDatabase { public: CrashReportDatabaseGeneric(); + + CrashReportDatabaseGeneric(const CrashReportDatabaseGeneric&) = delete; + CrashReportDatabaseGeneric& operator=(const CrashReportDatabaseGeneric&) = + delete; + ~CrashReportDatabaseGeneric() override; bool Initialize(const base::FilePath& path, bool may_create); @@ -297,8 +305,6 @@ class CrashReportDatabaseGeneric : public CrashReportDatabase { base::FilePath base_dir_; Settings settings_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(CrashReportDatabaseGeneric); }; FileWriter* CrashReportDatabase::NewReport::AddAttachment( diff --git a/client/crash_report_database_mac.mm b/client/crash_report_database_mac.mm index 485d05f3..839cfc8f 100644 --- a/client/crash_report_database_mac.mm +++ b/client/crash_report_database_mac.mm @@ -28,6 +28,7 @@ #include "base/cxx17_backports.h" #include "base/logging.h" #include "base/mac/scoped_nsautorelease_pool.h" +#include "base/macros.h" #include "base/posix/eintr_wrapper.h" #include "base/scoped_generic.h" #include "base/strings/string_piece.h" @@ -127,6 +128,10 @@ std::string XattrNameInternal(const base::StringPiece& name, bool new_name) { class CrashReportDatabaseMac : public CrashReportDatabase { public: explicit CrashReportDatabaseMac(const base::FilePath& path); + + CrashReportDatabaseMac(const CrashReportDatabaseMac&) = delete; + CrashReportDatabaseMac& operator=(const CrashReportDatabaseMac&) = delete; + virtual ~CrashReportDatabaseMac(); bool Initialize(bool may_create); @@ -243,8 +248,6 @@ class CrashReportDatabaseMac : public CrashReportDatabase { Settings settings_; bool xattr_new_names_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(CrashReportDatabaseMac); }; FileWriter* CrashReportDatabase::NewReport::AddAttachment( diff --git a/client/crash_report_database_test.cc b/client/crash_report_database_test.cc index 3c6a0577..9d3f1fc9 100644 --- a/client/crash_report_database_test.cc +++ b/client/crash_report_database_test.cc @@ -32,6 +32,9 @@ class CrashReportDatabaseTest : public testing::Test { public: CrashReportDatabaseTest() {} + CrashReportDatabaseTest(const CrashReportDatabaseTest&) = delete; + CrashReportDatabaseTest& operator=(const CrashReportDatabaseTest&) = delete; + protected: // testing::Test: void SetUp() override { @@ -125,8 +128,6 @@ class CrashReportDatabaseTest : public testing::Test { private: ScopedTempDir temp_dir_; std::unique_ptr db_; - - DISALLOW_COPY_AND_ASSIGN(CrashReportDatabaseTest); }; TEST_F(CrashReportDatabaseTest, Initialize) { diff --git a/client/crash_report_database_win.cc b/client/crash_report_database_win.cc index 0195f6b1..b8ecadb7 100644 --- a/client/crash_report_database_win.cc +++ b/client/crash_report_database_win.cc @@ -24,6 +24,7 @@ #include #include "base/logging.h" +#include "base/macros.h" #include "base/numerics/safe_math.h" #include "base/strings/utf_string_conversions.h" #include "client/settings.h" @@ -208,6 +209,9 @@ ReportDisk::ReportDisk(const UUID& uuid, //! to disk, and queries. class Metadata { public: + Metadata(const Metadata&) = delete; + Metadata& operator=(const Metadata&) = delete; + //! \brief Writes any changes if necessary, unlocks and closes the file //! handle. ~Metadata(); @@ -296,8 +300,6 @@ class Metadata { const base::FilePath report_dir_; bool dirty_; //! \brief `true` when a Write() is required on destruction. std::vector reports_; - - DISALLOW_COPY_AND_ASSIGN(Metadata); }; Metadata::~Metadata() { @@ -615,6 +617,10 @@ bool CreateDirectoryIfNecessary(const base::FilePath& path) { class CrashReportDatabaseWin : public CrashReportDatabase { public: explicit CrashReportDatabaseWin(const base::FilePath& path); + + CrashReportDatabaseWin(const CrashReportDatabaseWin&) = delete; + CrashReportDatabaseWin& operator=(const CrashReportDatabaseWin&) = delete; + ~CrashReportDatabaseWin() override; bool Initialize(bool may_create); @@ -662,8 +668,6 @@ class CrashReportDatabaseWin : public CrashReportDatabase { base::FilePath base_dir_; Settings settings_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(CrashReportDatabaseWin); }; base::FilePath CrashReportDatabaseWin::AttachmentsRootPath() { diff --git a/client/crashpad_client.h b/client/crashpad_client.h index eea953d4..c8016d25 100644 --- a/client/crashpad_client.h +++ b/client/crashpad_client.h @@ -23,7 +23,6 @@ #include #include "base/files/file_path.h" -#include "base/macros.h" #include "build/build_config.h" #include "build/chromeos_buildflags.h" #include "util/file/file_io.h" @@ -46,6 +45,10 @@ namespace crashpad { class CrashpadClient { public: CrashpadClient(); + + CrashpadClient(const CrashpadClient&) = delete; + CrashpadClient& operator=(const CrashpadClient&) = delete; + ~CrashpadClient(); //! \brief Starts a Crashpad handler process, performing any necessary @@ -744,8 +747,6 @@ class CrashpadClient { #elif defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_ANDROID) std::set unhandled_signals_; #endif // OS_APPLE - - DISALLOW_COPY_AND_ASSIGN(CrashpadClient); }; } // namespace crashpad diff --git a/client/crashpad_client_ios.cc b/client/crashpad_client_ios.cc index f53a6d5c..b32678d6 100644 --- a/client/crashpad_client_ios.cc +++ b/client/crashpad_client_ios.cc @@ -42,6 +42,9 @@ class CrashHandler : public Thread, public UniversalMachExcServer::Interface, public ObjcExceptionDelegate { public: + CrashHandler(const CrashHandler&) = delete; + CrashHandler& operator=(const CrashHandler&) = delete; + static CrashHandler* Get() { static CrashHandler* instance = new CrashHandler(); return instance; @@ -215,8 +218,6 @@ class CrashHandler : public Thread, struct sigaction old_action_ = {}; internal::IOSSystemDataCollector system_data_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(CrashHandler); }; } // namespace diff --git a/client/crashpad_client_linux.cc b/client/crashpad_client_linux.cc index cf94e6bd..eccf204c 100644 --- a/client/crashpad_client_linux.cc +++ b/client/crashpad_client_linux.cc @@ -129,6 +129,9 @@ std::vector BuildArgsToLaunchWithLinker( // A base class for Crashpad signal handler implementations. class SignalHandler { public: + SignalHandler(const SignalHandler&) = delete; + SignalHandler& operator=(const SignalHandler&) = delete; + // Returns the currently installed signal hander. May be `nullptr` if no // handler has been installed. static SignalHandler* Get() { return handler_; } @@ -208,8 +211,6 @@ class SignalHandler { static SignalHandler* handler_; static thread_local bool disabled_for_thread_; - - DISALLOW_COPY_AND_ASSIGN(SignalHandler); }; SignalHandler* SignalHandler::handler_ = nullptr; thread_local bool SignalHandler::disabled_for_thread_ = false; @@ -217,6 +218,9 @@ thread_local bool SignalHandler::disabled_for_thread_ = false; // Launches a single use handler to snapshot this process. class LaunchAtCrashHandler : public SignalHandler { public: + LaunchAtCrashHandler(const LaunchAtCrashHandler&) = delete; + LaunchAtCrashHandler& operator=(const LaunchAtCrashHandler&) = delete; + static LaunchAtCrashHandler* Get() { static LaunchAtCrashHandler* instance = new LaunchAtCrashHandler(); return instance; @@ -272,12 +276,13 @@ class LaunchAtCrashHandler : public SignalHandler { std::vector envp_strings_; std::vector envp_; bool set_envp_ = false; - - DISALLOW_COPY_AND_ASSIGN(LaunchAtCrashHandler); }; class RequestCrashDumpHandler : public SignalHandler { public: + RequestCrashDumpHandler(const RequestCrashDumpHandler&) = delete; + RequestCrashDumpHandler& operator=(const RequestCrashDumpHandler&) = delete; + static RequestCrashDumpHandler* Get() { static RequestCrashDumpHandler* instance = new RequestCrashDumpHandler(); return instance; @@ -365,8 +370,6 @@ class RequestCrashDumpHandler : public SignalHandler { // don't anything with it except pass it along). uint64_t crash_loop_before_time_ = 0; #endif - - DISALLOW_COPY_AND_ASSIGN(RequestCrashDumpHandler); }; } // namespace diff --git a/client/crashpad_client_linux_test.cc b/client/crashpad_client_linux_test.cc index 0153355f..a17589ad 100644 --- a/client/crashpad_client_linux_test.cc +++ b/client/crashpad_client_linux_test.cc @@ -81,6 +81,10 @@ class StartHandlerForSelfTest std::tuple> { public: StartHandlerForSelfTest() = default; + + StartHandlerForSelfTest(const StartHandlerForSelfTest&) = delete; + StartHandlerForSelfTest& operator=(const StartHandlerForSelfTest&) = delete; + ~StartHandlerForSelfTest() = default; void SetUp() override { @@ -95,8 +99,6 @@ class StartHandlerForSelfTest private: StartHandlerForSelfTestOptions options_; - - DISALLOW_COPY_AND_ASSIGN(StartHandlerForSelfTest); }; bool HandleCrashSuccessfully(int, siginfo_t*, ucontext_t*) { @@ -212,6 +214,9 @@ class ScopedAltSignalStack { public: ScopedAltSignalStack() = default; + ScopedAltSignalStack(const ScopedAltSignalStack&) = delete; + ScopedAltSignalStack& operator=(const ScopedAltSignalStack&) = delete; + ~ScopedAltSignalStack() { if (stack_mem_.is_valid()) { stack_t stack; @@ -242,8 +247,6 @@ class ScopedAltSignalStack { private: ScopedMmap stack_mem_; - - DISALLOW_COPY_AND_ASSIGN(ScopedAltSignalStack); }; class CrashThread : public Thread { @@ -252,6 +255,9 @@ class CrashThread : public Thread { CrashpadClient* client) : client_signal_stack_(), options_(options), client_(client) {} + CrashThread(const CrashThread&) = delete; + CrashThread& operator=(const CrashThread&) = delete; + private: void ThreadMain() override { // It is only necessary to call InitializeSignalStackForThread() once, but @@ -269,8 +275,6 @@ class CrashThread : public Thread { ScopedAltSignalStack client_signal_stack_; const StartHandlerForSelfTestOptions& options_; CrashpadClient* client_; - - DISALLOW_COPY_AND_ASSIGN(CrashThread); }; CRASHPAD_CHILD_TEST_MAIN(StartHandlerForSelfTestChild) { @@ -360,6 +364,11 @@ class StartHandlerForSelfInChildTest : public MultiprocessExec { } } + StartHandlerForSelfInChildTest(const StartHandlerForSelfInChildTest&) = + delete; + StartHandlerForSelfInChildTest& operator=( + const StartHandlerForSelfInChildTest&) = delete; + private: void MultiprocessParent() override { ScopedTempDir temp_dir; @@ -415,8 +424,6 @@ class StartHandlerForSelfInChildTest : public MultiprocessExec { } StartHandlerForSelfTestOptions options_; - - DISALLOW_COPY_AND_ASSIGN(StartHandlerForSelfInChildTest); }; TEST_P(StartHandlerForSelfTest, StartHandlerInChild) { @@ -450,6 +457,11 @@ INSTANTIATE_TEST_SUITE_P( class StartHandlerForClientTest { public: StartHandlerForClientTest() = default; + + StartHandlerForClientTest(const StartHandlerForClientTest&) = delete; + StartHandlerForClientTest& operator=(const StartHandlerForClientTest&) = + delete; + ~StartHandlerForClientTest() = default; bool Initialize(bool sanitize) { @@ -513,6 +525,9 @@ class StartHandlerForClientTest { // more privileged, process. class SandboxedHandler { public: + SandboxedHandler(const SandboxedHandler&) = delete; + SandboxedHandler& operator=(const SandboxedHandler&) = delete; + static SandboxedHandler* Get() { static SandboxedHandler* instance = new SandboxedHandler(); return instance; @@ -565,22 +580,22 @@ class StartHandlerForClientTest { FileHandle client_sock_; bool sanitize_; - - DISALLOW_COPY_AND_ASSIGN(SandboxedHandler); }; ScopedTempDir temp_dir_; ScopedFileHandle client_sock_; ScopedFileHandle server_sock_; bool sanitize_; - - DISALLOW_COPY_AND_ASSIGN(StartHandlerForClientTest); }; // Tests starting the handler for a child process. class StartHandlerForChildTest : public Multiprocess { public: StartHandlerForChildTest() = default; + + StartHandlerForChildTest(const StartHandlerForChildTest&) = delete; + StartHandlerForChildTest& operator=(const StartHandlerForChildTest&) = delete; + ~StartHandlerForChildTest() = default; bool Initialize(bool sanitize) { @@ -607,8 +622,6 @@ class StartHandlerForChildTest : public Multiprocess { } StartHandlerForClientTest test_state_; - - DISALLOW_COPY_AND_ASSIGN(StartHandlerForChildTest); }; TEST(CrashpadClient, StartHandlerForChild) { diff --git a/client/crashpad_client_mac.cc b/client/crashpad_client_mac.cc index ddcd485f..f4256f0c 100644 --- a/client/crashpad_client_mac.cc +++ b/client/crashpad_client_mac.cc @@ -25,6 +25,7 @@ #include "base/logging.h" #include "base/mac/mach_logging.h" +#include "base/macros.h" #include "base/strings/stringprintf.h" #include "util/mac/mac_util.h" #include "util/mach/bootstrap.h" @@ -94,6 +95,9 @@ class ScopedPthreadAttrDestroy { : pthread_attr_(pthread_attr) { } + ScopedPthreadAttrDestroy(const ScopedPthreadAttrDestroy&) = delete; + ScopedPthreadAttrDestroy& operator=(const ScopedPthreadAttrDestroy&) = delete; + ~ScopedPthreadAttrDestroy() { errno = pthread_attr_destroy(pthread_attr_); PLOG_IF(WARNING, errno != 0) << "pthread_attr_destroy"; @@ -101,13 +105,14 @@ class ScopedPthreadAttrDestroy { private: pthread_attr_t* pthread_attr_; - - DISALLOW_COPY_AND_ASSIGN(ScopedPthreadAttrDestroy); }; //! \brief Starts a Crashpad handler, possibly restarting it if it dies. class HandlerStarter final : public NotifyServer::DefaultInterface { public: + HandlerStarter(const HandlerStarter&) = delete; + HandlerStarter& operator=(const HandlerStarter&) = delete; + ~HandlerStarter() {} //! \brief Starts a Crashpad handler initially, as opposed to starting it for @@ -427,8 +432,6 @@ class HandlerStarter final : public NotifyServer::DefaultInterface { std::vector arguments_; base::mac::ScopedMachReceiveRight notify_port_; uint64_t last_start_time_; - - DISALLOW_COPY_AND_ASSIGN(HandlerStarter); }; } // namespace diff --git a/client/crashpad_client_win.cc b/client/crashpad_client_win.cc index 4ae8da03..0973c2a6 100644 --- a/client/crashpad_client_win.cc +++ b/client/crashpad_client_win.cc @@ -24,7 +24,6 @@ #include "base/atomicops.h" #include "base/logging.h" -#include "base/macros.h" #include "base/scoped_generic.h" #include "base/strings/stringprintf.h" #include "base/strings/utf_string_conversions.h" @@ -339,6 +338,11 @@ class ScopedCallSetHandlerStartupState { public: ScopedCallSetHandlerStartupState() : successful_(false) {} + ScopedCallSetHandlerStartupState(const ScopedCallSetHandlerStartupState&) = + delete; + ScopedCallSetHandlerStartupState& operator=( + const ScopedCallSetHandlerStartupState&) = delete; + ~ScopedCallSetHandlerStartupState() { SetHandlerStartupState(successful_ ? StartupState::kSucceeded : StartupState::kFailed); @@ -348,8 +352,6 @@ class ScopedCallSetHandlerStartupState { private: bool successful_; - - DISALLOW_COPY_AND_ASSIGN(ScopedCallSetHandlerStartupState); }; bool StartHandlerProcess( diff --git a/client/crashpad_info.h b/client/crashpad_info.h index 62efc10d..cc05398e 100644 --- a/client/crashpad_info.h +++ b/client/crashpad_info.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" #include "build/build_config.h" #include "client/annotation_list.h" #include "client/simple_address_range_bag.h" @@ -71,6 +70,9 @@ struct CrashpadInfo { CrashpadInfo(); + CrashpadInfo(const CrashpadInfo&) = delete; + CrashpadInfo& operator=(const CrashpadInfo&) = delete; + //! \brief Sets the bag of extra memory ranges to be included in the snapshot. //! //! Extra memory ranges may exist in \a address_range_bag at the time that @@ -270,8 +272,6 @@ struct CrashpadInfo { #if defined(__clang__) #pragma clang diagnostic pop #endif - - DISALLOW_COPY_AND_ASSIGN(CrashpadInfo); }; } // namespace crashpad diff --git a/client/ios_handler/in_process_intermediate_dump_handler.cc b/client/ios_handler/in_process_intermediate_dump_handler.cc index 43552a7a..9c1a3164 100644 --- a/client/ios_handler/in_process_intermediate_dump_handler.cc +++ b/client/ios_handler/in_process_intermediate_dump_handler.cc @@ -64,6 +64,9 @@ class ScopedTaskThreads { mach_msg_type_number_t thread_count) : threads_(threads), thread_count_(thread_count) {} + ScopedTaskThreads(const ScopedTaskThreads&) = delete; + ScopedTaskThreads& operator=(const ScopedTaskThreads&) = delete; + ~ScopedTaskThreads() { for (uint32_t thread_index = 0; thread_index < thread_count_; ++thread_index) { @@ -77,8 +80,6 @@ class ScopedTaskThreads { private: thread_act_array_t threads_; mach_msg_type_number_t thread_count_; - - DISALLOW_COPY_AND_ASSIGN(ScopedTaskThreads); }; //! \brief Log \a key as a string. diff --git a/client/ios_handler/in_process_intermediate_dump_handler.h b/client/ios_handler/in_process_intermediate_dump_handler.h index 9a33ff49..62815630 100644 --- a/client/ios_handler/in_process_intermediate_dump_handler.h +++ b/client/ios_handler/in_process_intermediate_dump_handler.h @@ -32,6 +32,12 @@ namespace internal { //! Note: All methods are `RUNS-DURING-CRASH`. class InProcessIntermediateDumpHandler final { public: + InProcessIntermediateDumpHandler() = delete; + InProcessIntermediateDumpHandler(const InProcessIntermediateDumpHandler&) = + delete; + InProcessIntermediateDumpHandler& operator=( + const InProcessIntermediateDumpHandler&) = delete; + //! \brief Set kVersion to 1. //! //! \param[in] writer The dump writer @@ -136,8 +142,6 @@ class InProcessIntermediateDumpHandler final { //! \brief Write Crashpad annotations list. static void WriteCrashpadAnnotationsList(IOSIntermediateDumpWriter* writer, CrashpadInfo* crashpad_info); - - DISALLOW_IMPLICIT_CONSTRUCTORS(InProcessIntermediateDumpHandler); }; } // namespace internal diff --git a/client/prune_crash_reports.h b/client/prune_crash_reports.h index 07a70980..b80cf7a5 100644 --- a/client/prune_crash_reports.h +++ b/client/prune_crash_reports.h @@ -20,7 +20,6 @@ #include -#include "base/macros.h" #include "client/crash_report_database.h" namespace crashpad { @@ -81,14 +80,16 @@ class AgePruneCondition final : public PruneCondition { //! \param[in] max_age_in_days Reports created more than this many days ago //! will be deleted. explicit AgePruneCondition(int max_age_in_days); + + AgePruneCondition(const AgePruneCondition&) = delete; + AgePruneCondition& operator=(const AgePruneCondition&) = delete; + ~AgePruneCondition(); bool ShouldPruneReport(const CrashReportDatabase::Report& report) override; private: const time_t oldest_report_time_; - - DISALLOW_COPY_AND_ASSIGN(AgePruneCondition); }; //! \brief A PruneCondition that deletes older reports to keep the total @@ -102,6 +103,11 @@ class DatabaseSizePruneCondition final : public PruneCondition { //! \param[in] max_size_in_kb The maximum number of kilobytes that all crash //! reports should consume. explicit DatabaseSizePruneCondition(size_t max_size_in_kb); + + DatabaseSizePruneCondition(const DatabaseSizePruneCondition&) = delete; + DatabaseSizePruneCondition& operator=(const DatabaseSizePruneCondition&) = + delete; + ~DatabaseSizePruneCondition(); bool ShouldPruneReport(const CrashReportDatabase::Report& report) override; @@ -109,8 +115,6 @@ class DatabaseSizePruneCondition final : public PruneCondition { private: const size_t max_size_in_kb_; size_t measured_size_in_kb_; - - DISALLOW_COPY_AND_ASSIGN(DatabaseSizePruneCondition); }; //! \brief A PruneCondition that conjoins two other PruneConditions. @@ -133,6 +137,10 @@ class BinaryPruneCondition final : public PruneCondition { //! \param[in] lhs The left-hand side of \a op. This class takes ownership. //! \param[in] rhs The right-hand side of \a op. This class takes ownership. BinaryPruneCondition(Operator op, PruneCondition* lhs, PruneCondition* rhs); + + BinaryPruneCondition(const BinaryPruneCondition&) = delete; + BinaryPruneCondition& operator=(const BinaryPruneCondition&) = delete; + ~BinaryPruneCondition(); bool ShouldPruneReport(const CrashReportDatabase::Report& report) override; @@ -141,8 +149,6 @@ class BinaryPruneCondition final : public PruneCondition { const Operator op_; std::unique_ptr lhs_; std::unique_ptr rhs_; - - DISALLOW_COPY_AND_ASSIGN(BinaryPruneCondition); }; } // namespace crashpad diff --git a/client/prune_crash_reports_test.cc b/client/prune_crash_reports_test.cc index 333c37ea..b989d2f6 100644 --- a/client/prune_crash_reports_test.cc +++ b/client/prune_crash_reports_test.cc @@ -149,6 +149,10 @@ TEST(PruneCrashReports, SizeCondition) { class StaticCondition final : public PruneCondition { public: explicit StaticCondition(bool value) : value_(value), did_execute_(false) {} + + StaticCondition(const StaticCondition&) = delete; + StaticCondition& operator=(const StaticCondition&) = delete; + ~StaticCondition() {} bool ShouldPruneReport(const CrashReportDatabase::Report& report) override { @@ -161,8 +165,6 @@ class StaticCondition final : public PruneCondition { private: const bool value_; bool did_execute_; - - DISALLOW_COPY_AND_ASSIGN(StaticCondition); }; TEST(PruneCrashReports, BinaryCondition) { diff --git a/client/settings.h b/client/settings.h index 5761c6b9..d17f357e 100644 --- a/client/settings.h +++ b/client/settings.h @@ -20,7 +20,6 @@ #include #include "base/files/file_path.h" -#include "base/macros.h" #include "base/scoped_generic.h" #include "build/build_config.h" #include "util/file/file_io.h" @@ -46,6 +45,10 @@ struct ScopedLockedFileHandleTraits { class Settings { public: Settings(); + + Settings(const Settings&) = delete; + Settings& operator=(const Settings&) = delete; + ~Settings(); //! \brief Initializes the settings data store. @@ -130,6 +133,10 @@ class Settings { const base::FilePath& lockfile_path); ScopedLockedFileHandle(ScopedLockedFileHandle&& other); ScopedLockedFileHandle& operator=(ScopedLockedFileHandle&& other); + + ScopedLockedFileHandle(const ScopedLockedFileHandle&) = delete; + ScopedLockedFileHandle& operator=(const ScopedLockedFileHandle&) = delete; + ~ScopedLockedFileHandle(); // These mirror the non-Fuchsia ScopedLockedFileHandle via ScopedGeneric so @@ -147,8 +154,6 @@ class Settings { FileHandle handle_; base::FilePath lockfile_path_; - - DISALLOW_COPY_AND_ASSIGN(ScopedLockedFileHandle); }; #else // OS_FUCHSIA using ScopedLockedFileHandle = @@ -221,8 +226,6 @@ class Settings { base::FilePath file_path_; InitializationState initialized_; - - DISALLOW_COPY_AND_ASSIGN(Settings); }; } // namespace crashpad diff --git a/client/settings_test.cc b/client/settings_test.cc index 3a5730bd..5f13cfcc 100644 --- a/client/settings_test.cc +++ b/client/settings_test.cc @@ -28,6 +28,9 @@ class SettingsTest : public testing::Test { public: SettingsTest() = default; + SettingsTest(const SettingsTest&) = delete; + SettingsTest& operator=(const SettingsTest&) = delete; + base::FilePath settings_path() { return temp_dir_.path().Append(FILE_PATH_LITERAL("settings")); } @@ -55,8 +58,6 @@ class SettingsTest : public testing::Test { private: ScopedTempDir temp_dir_; Settings settings_; - - DISALLOW_COPY_AND_ASSIGN(SettingsTest); }; TEST_F(SettingsTest, ClientID) { diff --git a/client/simple_address_range_bag.h b/client/simple_address_range_bag.h index 0a87a89b..1bdfa824 100644 --- a/client/simple_address_range_bag.h +++ b/client/simple_address_range_bag.h @@ -22,7 +22,6 @@ #include "base/check_op.h" #include "base/logging.h" -#include "base/macros.h" #include "base/numerics/safe_conversions.h" #include "util/misc/from_pointer_cast.h" #include "util/numeric/checked_range.h" @@ -66,6 +65,9 @@ class TSimpleAddressRangeBag { current_(0) { } + Iterator(const Iterator&) = delete; + Iterator& operator=(const Iterator&) = delete; + //! \brief Returns the next entry in the bag, or `nullptr` if at the end of //! the collection. const Entry* Next() { @@ -81,8 +83,6 @@ class TSimpleAddressRangeBag { private: const TSimpleAddressRangeBag& bag_; size_t current_; - - DISALLOW_COPY_AND_ASSIGN(Iterator); }; TSimpleAddressRangeBag() diff --git a/client/simple_string_dictionary.h b/client/simple_string_dictionary.h index 31c7548d..43483dd8 100644 --- a/client/simple_string_dictionary.h +++ b/client/simple_string_dictionary.h @@ -22,7 +22,6 @@ #include #include "base/check_op.h" -#include "base/macros.h" #include "base/strings/string_piece.h" #include "util/misc/implicit_cast.h" @@ -82,6 +81,9 @@ class TSimpleStringDictionary { current_(0) { } + Iterator(const Iterator&) = delete; + Iterator& operator=(const Iterator&) = delete; + //! \brief Returns the next entry in the map, or `nullptr` if at the end of //! the collection. const Entry* Next() { @@ -97,8 +99,6 @@ class TSimpleStringDictionary { private: const TSimpleStringDictionary& map_; size_t current_; - - DISALLOW_COPY_AND_ASSIGN(Iterator); }; TSimpleStringDictionary() diff --git a/client/simulate_crash_mac_test.cc b/client/simulate_crash_mac_test.cc index 92ae73e7..f22b2a69 100644 --- a/client/simulate_crash_mac_test.cc +++ b/client/simulate_crash_mac_test.cc @@ -19,7 +19,6 @@ #include #include "base/cxx17_backports.h" -#include "base/macros.h" #include "base/strings/stringprintf.h" #include "build/build_config.h" #include "gtest/gtest.h" @@ -80,6 +79,9 @@ class TestSimulateCrashMac final : public MachMultiprocess, succeed_(true) { } + TestSimulateCrashMac(const TestSimulateCrashMac&) = delete; + TestSimulateCrashMac& operator=(const TestSimulateCrashMac&) = delete; + ~TestSimulateCrashMac() {} // UniversalMachExcServer::Interface: @@ -325,8 +327,6 @@ class TestSimulateCrashMac final : public MachMultiprocess, exception_behavior_t behavior_; thread_state_flavor_t flavor_; bool succeed_; - - DISALLOW_COPY_AND_ASSIGN(TestSimulateCrashMac); }; TEST(SimulateCrash, SimulateCrash) { diff --git a/handler/crash_report_upload_thread.h b/handler/crash_report_upload_thread.h index 2ec1147d..1a88a087 100644 --- a/handler/crash_report_upload_thread.h +++ b/handler/crash_report_upload_thread.h @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" #include "client/crash_report_database.h" #include "util/misc/uuid.h" #include "util/stdlib/thread_safe_vector.h" @@ -70,6 +69,10 @@ class CrashReportUploadThread : public WorkerThread::Delegate, CrashReportUploadThread(CrashReportDatabase* database, const std::string& url, const Options& options); + + CrashReportUploadThread(const CrashReportUploadThread&) = delete; + CrashReportUploadThread& operator=(const CrashReportUploadThread&) = delete; + ~CrashReportUploadThread(); //! \brief Informs the upload thread that a new pending report has been added @@ -172,8 +175,6 @@ class CrashReportUploadThread : public WorkerThread::Delegate, WorkerThread thread_; ThreadSafeVector known_pending_report_uuids_; CrashReportDatabase* database_; // weak - - DISALLOW_COPY_AND_ASSIGN(CrashReportUploadThread); }; } // namespace crashpad diff --git a/handler/crashpad_handler_test_extended_handler.cc b/handler/crashpad_handler_test_extended_handler.cc index 7a8f4563..4abcacd5 100644 --- a/handler/crashpad_handler_test_extended_handler.cc +++ b/handler/crashpad_handler_test_extended_handler.cc @@ -14,7 +14,6 @@ #include -#include "base/macros.h" #include "build/build_config.h" #include "handler/handler_main.h" #include "minidump/test/minidump_user_extension_stream_util.h" @@ -30,11 +29,11 @@ class TestUserStreamDataSource : public crashpad::UserStreamDataSource { public: TestUserStreamDataSource() {} + TestUserStreamDataSource(const TestUserStreamDataSource&) = delete; + TestUserStreamDataSource& operator=(const TestUserStreamDataSource&) = delete; + std::unique_ptr ProduceStreamData(crashpad::ProcessSnapshot* process_snapshot) override; - - private: - DISALLOW_COPY_AND_ASSIGN(TestUserStreamDataSource); }; std::unique_ptr diff --git a/handler/handler_main.cc b/handler/handler_main.cc index 737ee4e0..5733463b 100644 --- a/handler/handler_main.cc +++ b/handler/handler_main.cc @@ -270,12 +270,14 @@ int ExitFailure() { class CallMetricsRecordNormalExit { public: CallMetricsRecordNormalExit() {} + + CallMetricsRecordNormalExit(const CallMetricsRecordNormalExit&) = delete; + CallMetricsRecordNormalExit& operator=(const CallMetricsRecordNormalExit&) = + delete; + ~CallMetricsRecordNormalExit() { MetricsRecordExit(Metrics::LifetimeMilestone::kExitedNormally); } - - private: - DISALLOW_COPY_AND_ASSIGN(CallMetricsRecordNormalExit); }; #if defined(OS_APPLE) || defined(OS_LINUX) || defined(OS_CHROMEOS) || \ @@ -391,6 +393,10 @@ BOOL WINAPI ConsoleHandler(DWORD console_event) { class TerminateHandler final : public SessionEndWatcher { public: TerminateHandler() : SessionEndWatcher() {} + + TerminateHandler(const TerminateHandler&) = delete; + TerminateHandler& operator=(const TerminateHandler&) = delete; + ~TerminateHandler() override {} private: @@ -398,8 +404,6 @@ class TerminateHandler final : public SessionEndWatcher { void SessionEnding() override { MetricsRecordExit(Metrics::LifetimeMilestone::kTerminated); } - - DISALLOW_COPY_AND_ASSIGN(TerminateHandler); }; void ReinstallCrashHandler() { @@ -489,6 +493,9 @@ class ScopedStoppable { public: ScopedStoppable() = default; + ScopedStoppable(const ScopedStoppable&) = delete; + ScopedStoppable& operator=(const ScopedStoppable&) = delete; + ~ScopedStoppable() { if (stoppable_) { stoppable_->Stop(); @@ -501,8 +508,6 @@ class ScopedStoppable { private: std::unique_ptr stoppable_; - - DISALLOW_COPY_AND_ASSIGN(ScopedStoppable); }; void InitCrashpadLogging() { diff --git a/handler/linux/crash_report_exception_handler.cc b/handler/linux/crash_report_exception_handler.cc index 9dc313cd..4d37582b 100644 --- a/handler/linux/crash_report_exception_handler.cc +++ b/handler/linux/crash_report_exception_handler.cc @@ -46,6 +46,10 @@ namespace { class Logger final : public LogOutputStream::Delegate { public: Logger() = default; + + Logger(const Logger&) = delete; + Logger& operator=(const Logger&) = delete; + ~Logger() override = default; #if defined(OS_ANDROID) @@ -72,9 +76,6 @@ class Logger final : public LogOutputStream::Delegate { size_t OutputCap() override { return 0; } size_t LineWidth() override { return 0; } #endif - - private: - DISALLOW_COPY_AND_ASSIGN(Logger); }; bool WriteMinidumpLogFromFile(FileReaderInterface* file_reader) { diff --git a/handler/linux/crash_report_exception_handler.h b/handler/linux/crash_report_exception_handler.h index ae284301..76fce92f 100644 --- a/handler/linux/crash_report_exception_handler.h +++ b/handler/linux/crash_report_exception_handler.h @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" #include "client/crash_report_database.h" #include "handler/crash_report_upload_thread.h" #include "handler/linux/exception_handler_server.h" @@ -72,6 +71,10 @@ class CrashReportExceptionHandler : public ExceptionHandlerServer::Delegate { bool write_minidump_to_log, const UserStreamDataSources* user_stream_data_sources); + CrashReportExceptionHandler(const CrashReportExceptionHandler&) = delete; + CrashReportExceptionHandler& operator=(const CrashReportExceptionHandler&) = + delete; + ~CrashReportExceptionHandler() override; // ExceptionHandlerServer::Delegate: @@ -113,8 +116,6 @@ class CrashReportExceptionHandler : public ExceptionHandlerServer::Delegate { bool write_minidump_to_database_; bool write_minidump_to_log_; const UserStreamDataSources* user_stream_data_sources_; // weak - - DISALLOW_COPY_AND_ASSIGN(CrashReportExceptionHandler); }; } // namespace crashpad diff --git a/handler/linux/cros_crash_report_exception_handler.h b/handler/linux/cros_crash_report_exception_handler.h index 0b145448..eaa6eb16 100644 --- a/handler/linux/cros_crash_report_exception_handler.h +++ b/handler/linux/cros_crash_report_exception_handler.h @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" #include "client/crash_report_database.h" #include "handler/linux/exception_handler_server.h" #include "handler/user_stream_data_source.h" @@ -58,6 +57,11 @@ class CrosCrashReportExceptionHandler const std::map* process_annotations, const UserStreamDataSources* user_stream_data_sources); + CrosCrashReportExceptionHandler(const CrosCrashReportExceptionHandler&) = + delete; + CrosCrashReportExceptionHandler& operator=( + const CrosCrashReportExceptionHandler&) = delete; + ~CrosCrashReportExceptionHandler() override; // ExceptionHandlerServer::Delegate: @@ -92,8 +96,6 @@ class CrosCrashReportExceptionHandler const UserStreamDataSources* user_stream_data_sources_; // weak base::FilePath dump_dir_; bool always_allow_feedback_; - - DISALLOW_COPY_AND_ASSIGN(CrosCrashReportExceptionHandler); }; } // namespace crashpad diff --git a/handler/linux/exception_handler_server.h b/handler/linux/exception_handler_server.h index ac430a4c..60bf496d 100644 --- a/handler/linux/exception_handler_server.h +++ b/handler/linux/exception_handler_server.h @@ -22,7 +22,6 @@ #include #include -#include "base/macros.h" #include "util/file/file_io.h" #include "util/linux/exception_handler_protocol.h" #include "util/misc/address_types.h" @@ -116,6 +115,10 @@ class ExceptionHandlerServer { }; ExceptionHandlerServer(); + + ExceptionHandlerServer(const ExceptionHandlerServer&) = delete; + ExceptionHandlerServer& operator=(const ExceptionHandlerServer&) = delete; + ~ExceptionHandlerServer(); //! \brief Sets the handler's PtraceStrategyDecider. @@ -187,8 +190,6 @@ class ExceptionHandlerServer { ScopedFileHandle pollfd_; std::atomic keep_running_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ExceptionHandlerServer); }; } // namespace crashpad diff --git a/handler/linux/exception_handler_server_test.cc b/handler/linux/exception_handler_server_test.cc index 81687fdc..786bab1b 100644 --- a/handler/linux/exception_handler_server_test.cc +++ b/handler/linux/exception_handler_server_test.cc @@ -45,6 +45,9 @@ class RunServerThread : public Thread { ExceptionHandlerServer::Delegate* delegate) : server_(server), delegate_(delegate), join_sem_(0) {} + RunServerThread(const RunServerThread&) = delete; + RunServerThread& operator=(const RunServerThread&) = delete; + ~RunServerThread() override {} bool JoinWithTimeout(double timeout) { @@ -65,8 +68,6 @@ class RunServerThread : public Thread { ExceptionHandlerServer* server_; ExceptionHandlerServer::Delegate* delegate_; Semaphore join_sem_; - - DISALLOW_COPY_AND_ASSIGN(RunServerThread); }; class ScopedStopServerAndJoinThread { @@ -75,6 +76,10 @@ class ScopedStopServerAndJoinThread { RunServerThread* thread) : server_(server), thread_(thread) {} + ScopedStopServerAndJoinThread(const ScopedStopServerAndJoinThread&) = delete; + ScopedStopServerAndJoinThread& operator=( + const ScopedStopServerAndJoinThread&) = delete; + ~ScopedStopServerAndJoinThread() { server_->Stop(); EXPECT_TRUE(thread_->JoinWithTimeout(5.0)); @@ -83,8 +88,6 @@ class ScopedStopServerAndJoinThread { private: ExceptionHandlerServer* server_; RunServerThread* thread_; - - DISALLOW_COPY_AND_ASSIGN(ScopedStopServerAndJoinThread); }; class TestDelegate : public ExceptionHandlerServer::Delegate { @@ -92,6 +95,9 @@ class TestDelegate : public ExceptionHandlerServer::Delegate { TestDelegate() : Delegate(), last_exception_address_(0), last_client_(-1), sem_(0) {} + TestDelegate(const TestDelegate&) = delete; + TestDelegate& operator=(const TestDelegate&) = delete; + ~TestDelegate() {} bool WaitForException(double timeout_seconds, @@ -159,8 +165,6 @@ class TestDelegate : public ExceptionHandlerServer::Delegate { VMAddress last_exception_address_; pid_t last_client_; Semaphore sem_; - - DISALLOW_COPY_AND_ASSIGN(TestDelegate); }; class MockPtraceStrategyDecider : public PtraceStrategyDecider { @@ -168,6 +172,10 @@ class MockPtraceStrategyDecider : public PtraceStrategyDecider { MockPtraceStrategyDecider(PtraceStrategyDecider::Strategy strategy) : PtraceStrategyDecider(), strategy_(strategy) {} + MockPtraceStrategyDecider(const MockPtraceStrategyDecider&) = delete; + MockPtraceStrategyDecider& operator=(const MockPtraceStrategyDecider&) = + delete; + ~MockPtraceStrategyDecider() {} Strategy ChooseStrategy(int sock, @@ -198,8 +206,6 @@ class MockPtraceStrategyDecider : public PtraceStrategyDecider { private: Strategy strategy_; - - DISALLOW_COPY_AND_ASSIGN(MockPtraceStrategyDecider); }; class ExceptionHandlerServerTest : public testing::TestWithParam { @@ -211,6 +217,10 @@ class ExceptionHandlerServerTest : public testing::TestWithParam { sock_to_handler_(), use_multi_client_socket_(GetParam()) {} + ExceptionHandlerServerTest(const ExceptionHandlerServerTest&) = delete; + ExceptionHandlerServerTest& operator=(const ExceptionHandlerServerTest&) = + delete; + ~ExceptionHandlerServerTest() = default; int SockToHandler() { return sock_to_handler_.get(); } @@ -228,6 +238,9 @@ class ExceptionHandlerServerTest : public testing::TestWithParam { CrashDumpTest(ExceptionHandlerServerTest* server_test, bool succeeds) : Multiprocess(), server_test_(server_test), succeeds_(succeeds) {} + CrashDumpTest(const CrashDumpTest&) = delete; + CrashDumpTest& operator=(const CrashDumpTest&) = delete; + ~CrashDumpTest() = default; void MultiprocessParent() override { @@ -267,8 +280,6 @@ class ExceptionHandlerServerTest : public testing::TestWithParam { private: ExceptionHandlerServerTest* server_test_; bool succeeds_; - - DISALLOW_COPY_AND_ASSIGN(CrashDumpTest); }; void ExpectCrashDumpUsingStrategy(PtraceStrategyDecider::Strategy strategy, @@ -303,8 +314,6 @@ class ExceptionHandlerServerTest : public testing::TestWithParam { ScopedFileHandle sock_to_handler_; int sock_to_client_; bool use_multi_client_socket_; - - DISALLOW_COPY_AND_ASSIGN(ExceptionHandlerServerTest); }; TEST_P(ExceptionHandlerServerTest, ShutdownWithNoClients) { diff --git a/handler/mac/crash_report_exception_handler.h b/handler/mac/crash_report_exception_handler.h index b5a59e43..16c66912 100644 --- a/handler/mac/crash_report_exception_handler.h +++ b/handler/mac/crash_report_exception_handler.h @@ -20,7 +20,6 @@ #include #include -#include "base/macros.h" #include "client/crash_report_database.h" #include "handler/crash_report_upload_thread.h" #include "handler/user_stream_data_source.h" @@ -59,6 +58,10 @@ class CrashReportExceptionHandler final const std::map* process_annotations, const UserStreamDataSources* user_stream_data_sources); + CrashReportExceptionHandler(const CrashReportExceptionHandler&) = delete; + CrashReportExceptionHandler& operator=(const CrashReportExceptionHandler&) = + delete; + ~CrashReportExceptionHandler(); // UniversalMachExcServer::Interface: @@ -86,8 +89,6 @@ class CrashReportExceptionHandler final CrashReportUploadThread* upload_thread_; // weak const std::map* process_annotations_; // weak const UserStreamDataSources* user_stream_data_sources_; // weak - - DISALLOW_COPY_AND_ASSIGN(CrashReportExceptionHandler); }; } // namespace crashpad diff --git a/handler/mac/exception_handler_server.cc b/handler/mac/exception_handler_server.cc index 3f30e03a..83bb2696 100644 --- a/handler/mac/exception_handler_server.cc +++ b/handler/mac/exception_handler_server.cc @@ -50,6 +50,10 @@ class ExceptionHandlerServerRun : public UniversalMachExcServer::Interface, composite_mach_message_server_.AddHandler(¬ify_server_); } + ExceptionHandlerServerRun(const ExceptionHandlerServerRun&) = delete; + ExceptionHandlerServerRun& operator=(const ExceptionHandlerServerRun&) = + delete; + ~ExceptionHandlerServerRun() { } @@ -183,8 +187,6 @@ class ExceptionHandlerServerRun : public UniversalMachExcServer::Interface, mach_port_t notify_port_; // weak bool running_; bool launchd_; - - DISALLOW_COPY_AND_ASSIGN(ExceptionHandlerServerRun); }; } // namespace diff --git a/handler/mac/exception_handler_server.h b/handler/mac/exception_handler_server.h index 272cf762..c27ecf34 100644 --- a/handler/mac/exception_handler_server.h +++ b/handler/mac/exception_handler_server.h @@ -18,7 +18,6 @@ #include #include "base/mac/scoped_mach_port.h" -#include "base/macros.h" #include "util/mach/exc_server_variants.h" namespace crashpad { @@ -37,6 +36,10 @@ class ExceptionHandlerServer { //! signal. ExceptionHandlerServer(base::mac::ScopedMachReceiveRight receive_port, bool launchd); + + ExceptionHandlerServer(const ExceptionHandlerServer&) = delete; + ExceptionHandlerServer& operator=(const ExceptionHandlerServer&) = delete; + ~ExceptionHandlerServer(); //! \brief Runs the exception-handling server. @@ -73,8 +76,6 @@ class ExceptionHandlerServer { base::mac::ScopedMachReceiveRight receive_port_; base::mac::ScopedMachReceiveRight notify_port_; bool launchd_; - - DISALLOW_COPY_AND_ASSIGN(ExceptionHandlerServer); }; } // namespace crashpad diff --git a/handler/prune_crash_reports_thread.h b/handler/prune_crash_reports_thread.h index 0fd365b0..5009ed65 100644 --- a/handler/prune_crash_reports_thread.h +++ b/handler/prune_crash_reports_thread.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" #include "util/thread/stoppable.h" #include "util/thread/worker_thread.h" @@ -41,6 +40,10 @@ class PruneCrashReportThread : public WorkerThread::Delegate, public Stoppable { //! pruning. PruneCrashReportThread(CrashReportDatabase* database, std::unique_ptr condition); + + PruneCrashReportThread(const PruneCrashReportThread&) = delete; + PruneCrashReportThread& operator=(const PruneCrashReportThread&) = delete; + ~PruneCrashReportThread(); // Stoppable: @@ -70,8 +73,6 @@ class PruneCrashReportThread : public WorkerThread::Delegate, public Stoppable { WorkerThread thread_; std::unique_ptr condition_; CrashReportDatabase* database_; // weak - - DISALLOW_COPY_AND_ASSIGN(PruneCrashReportThread); }; } // namespace crashpad diff --git a/handler/win/crash_report_exception_handler.h b/handler/win/crash_report_exception_handler.h index cefb8981..d322370f 100644 --- a/handler/win/crash_report_exception_handler.h +++ b/handler/win/crash_report_exception_handler.h @@ -20,7 +20,6 @@ #include #include -#include "base/macros.h" #include "handler/user_stream_data_source.h" #include "util/win/exception_handler_server.h" @@ -63,6 +62,10 @@ class CrashReportExceptionHandler final const std::vector* attachments, const UserStreamDataSources* user_stream_data_sources); + CrashReportExceptionHandler(const CrashReportExceptionHandler&) = delete; + CrashReportExceptionHandler& operator=(const CrashReportExceptionHandler&) = + delete; + ~CrashReportExceptionHandler(); // ExceptionHandlerServer::Delegate: @@ -81,8 +84,6 @@ class CrashReportExceptionHandler final const std::map* process_annotations_; // weak const std::vector* attachments_; // weak const UserStreamDataSources* user_stream_data_sources_; // weak - - DISALLOW_COPY_AND_ASSIGN(CrashReportExceptionHandler); }; } // namespace crashpad diff --git a/minidump/minidump_annotation_writer.h b/minidump/minidump_annotation_writer.h index fc30dbc3..ffb931de 100644 --- a/minidump/minidump_annotation_writer.h +++ b/minidump/minidump_annotation_writer.h @@ -36,6 +36,10 @@ namespace crashpad { class MinidumpAnnotationWriter final : public internal::MinidumpWritable { public: MinidumpAnnotationWriter(); + + MinidumpAnnotationWriter(const MinidumpAnnotationWriter&) = delete; + MinidumpAnnotationWriter& operator=(const MinidumpAnnotationWriter&) = delete; + ~MinidumpAnnotationWriter(); //! \brief Initializes the annotation writer with data from an @@ -62,8 +66,6 @@ class MinidumpAnnotationWriter final : public internal::MinidumpWritable { MinidumpAnnotation annotation_; internal::MinidumpUTF8StringWriter name_; MinidumpByteArrayWriter value_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpAnnotationWriter); }; //! \brief The writer for a MinidumpAnnotationList object in a minidump file, @@ -71,6 +73,11 @@ class MinidumpAnnotationWriter final : public internal::MinidumpWritable { class MinidumpAnnotationListWriter final : public internal::MinidumpWritable { public: MinidumpAnnotationListWriter(); + + MinidumpAnnotationListWriter(const MinidumpAnnotationListWriter&) = delete; + MinidumpAnnotationListWriter& operator=(const MinidumpAnnotationListWriter&) = + delete; + ~MinidumpAnnotationListWriter(); //! \brief Initializes the annotation list writer with a list of @@ -100,8 +107,6 @@ class MinidumpAnnotationListWriter final : public internal::MinidumpWritable { private: std::unique_ptr minidump_list_; std::vector> objects_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpAnnotationListWriter); }; } // namespace crashpad diff --git a/minidump/minidump_byte_array_writer.h b/minidump/minidump_byte_array_writer.h index c399f035..2cbc279c 100644 --- a/minidump/minidump_byte_array_writer.h +++ b/minidump/minidump_byte_array_writer.h @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" #include "minidump/minidump_extensions.h" #include "minidump/minidump_writable.h" @@ -29,6 +28,10 @@ namespace crashpad { class MinidumpByteArrayWriter final : public internal::MinidumpWritable { public: MinidumpByteArrayWriter(); + + MinidumpByteArrayWriter(const MinidumpByteArrayWriter&) = delete; + MinidumpByteArrayWriter& operator=(const MinidumpByteArrayWriter&) = delete; + ~MinidumpByteArrayWriter() override; //! \brief Sets the data to be written. @@ -56,8 +59,6 @@ class MinidumpByteArrayWriter final : public internal::MinidumpWritable { private: std::unique_ptr minidump_array_; std::vector data_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpByteArrayWriter); }; } // namespace crashpad diff --git a/minidump/minidump_context_writer.h b/minidump/minidump_context_writer.h index d4ab936e..80b312b2 100644 --- a/minidump/minidump_context_writer.h +++ b/minidump/minidump_context_writer.h @@ -19,7 +19,6 @@ #include -#include "base/macros.h" #include "minidump/minidump_context.h" #include "minidump/minidump_writable.h" @@ -33,6 +32,9 @@ struct CPUContextX86_64; //! files. class MinidumpContextWriter : public internal::MinidumpWritable { public: + MinidumpContextWriter(const MinidumpContextWriter&) = delete; + MinidumpContextWriter& operator=(const MinidumpContextWriter&) = delete; + ~MinidumpContextWriter() override; //! \brief Creates a MinidumpContextWriter based on \a context_snapshot. @@ -59,15 +61,16 @@ class MinidumpContextWriter : public internal::MinidumpWritable { // MinidumpWritable: size_t SizeOfObject() final; - - private: - DISALLOW_COPY_AND_ASSIGN(MinidumpContextWriter); }; //! \brief The writer for a MinidumpContextX86 structure in a minidump file. class MinidumpContextX86Writer final : public MinidumpContextWriter { public: MinidumpContextX86Writer(); + + MinidumpContextX86Writer(const MinidumpContextX86Writer&) = delete; + MinidumpContextX86Writer& operator=(const MinidumpContextX86Writer&) = delete; + ~MinidumpContextX86Writer() override; //! \brief Initializes the MinidumpContextX86 based on \a context_snapshot. @@ -100,14 +103,17 @@ class MinidumpContextX86Writer final : public MinidumpContextWriter { private: MinidumpContextX86 context_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpContextX86Writer); }; //! \brief The writer for a MinidumpContextAMD64 structure in a minidump file. class MinidumpContextAMD64Writer final : public MinidumpContextWriter { public: MinidumpContextAMD64Writer(); + + MinidumpContextAMD64Writer(const MinidumpContextAMD64Writer&) = delete; + MinidumpContextAMD64Writer& operator=(const MinidumpContextAMD64Writer&) = + delete; + ~MinidumpContextAMD64Writer() override; // Ensure proper alignment of heap-allocated objects. This should not be @@ -151,14 +157,16 @@ class MinidumpContextAMD64Writer final : public MinidumpContextWriter { private: MinidumpContextAMD64 context_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpContextAMD64Writer); }; //! \brief The writer for a MinidumpContextARM structure in a minidump file. class MinidumpContextARMWriter final : public MinidumpContextWriter { public: MinidumpContextARMWriter(); + + MinidumpContextARMWriter(const MinidumpContextARMWriter&) = delete; + MinidumpContextARMWriter& operator=(const MinidumpContextARMWriter&) = delete; + ~MinidumpContextARMWriter() override; //! \brief Initializes the MinidumpContextARM based on \a context_snapshot. @@ -191,14 +199,17 @@ class MinidumpContextARMWriter final : public MinidumpContextWriter { private: MinidumpContextARM context_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpContextARMWriter); }; //! \brief The writer for a MinidumpContextARM64 structure in a minidump file. class MinidumpContextARM64Writer final : public MinidumpContextWriter { public: MinidumpContextARM64Writer(); + + MinidumpContextARM64Writer(const MinidumpContextARM64Writer&) = delete; + MinidumpContextARM64Writer& operator=(const MinidumpContextARM64Writer&) = + delete; + ~MinidumpContextARM64Writer() override; //! \brief Initializes the MinidumpContextARM64 based on \a context_snapshot. @@ -231,14 +242,17 @@ class MinidumpContextARM64Writer final : public MinidumpContextWriter { private: MinidumpContextARM64 context_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpContextARM64Writer); }; //! \brief The writer for a MinidumpContextMIPS structure in a minidump file. class MinidumpContextMIPSWriter final : public MinidumpContextWriter { public: MinidumpContextMIPSWriter(); + + MinidumpContextMIPSWriter(const MinidumpContextMIPSWriter&) = delete; + MinidumpContextMIPSWriter& operator=(const MinidumpContextMIPSWriter&) = + delete; + ~MinidumpContextMIPSWriter() override; //! \brief Initializes the MinidumpContextMIPS based on \a context_snapshot. @@ -271,14 +285,17 @@ class MinidumpContextMIPSWriter final : public MinidumpContextWriter { private: MinidumpContextMIPS context_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpContextMIPSWriter); }; //! \brief The writer for a MinidumpContextMIPS64 structure in a minidump file. class MinidumpContextMIPS64Writer final : public MinidumpContextWriter { public: MinidumpContextMIPS64Writer(); + + MinidumpContextMIPS64Writer(const MinidumpContextMIPS64Writer&) = delete; + MinidumpContextMIPS64Writer& operator=(const MinidumpContextMIPS64Writer&) = + delete; + ~MinidumpContextMIPS64Writer() override; //! \brief Initializes the MinidumpContextMIPS based on \a context_snapshot. @@ -311,8 +328,6 @@ class MinidumpContextMIPS64Writer final : public MinidumpContextWriter { private: MinidumpContextMIPS64 context_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpContextMIPS64Writer); }; } // namespace crashpad diff --git a/minidump/minidump_crashpad_info_writer.h b/minidump/minidump_crashpad_info_writer.h index 4624b24d..b7aa2d89 100644 --- a/minidump/minidump_crashpad_info_writer.h +++ b/minidump/minidump_crashpad_info_writer.h @@ -20,7 +20,6 @@ #include #include -#include "base/macros.h" #include "minidump/minidump_extensions.h" #include "minidump/minidump_stream_writer.h" #include "util/misc/uuid.h" @@ -35,6 +34,11 @@ class ProcessSnapshot; class MinidumpCrashpadInfoWriter final : public internal::MinidumpStreamWriter { public: MinidumpCrashpadInfoWriter(); + + MinidumpCrashpadInfoWriter(const MinidumpCrashpadInfoWriter&) = delete; + MinidumpCrashpadInfoWriter& operator=(const MinidumpCrashpadInfoWriter&) = + delete; + ~MinidumpCrashpadInfoWriter() override; //! \brief Initializes MinidumpCrashpadInfo based on \a process_snapshot. @@ -105,8 +109,6 @@ class MinidumpCrashpadInfoWriter final : public internal::MinidumpStreamWriter { MinidumpCrashpadInfo crashpad_info_; std::unique_ptr simple_annotations_; std::unique_ptr module_list_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpCrashpadInfoWriter); }; } // namespace crashpad diff --git a/minidump/minidump_exception_writer.h b/minidump/minidump_exception_writer.h index cc8c6bef..82299a5a 100644 --- a/minidump/minidump_exception_writer.h +++ b/minidump/minidump_exception_writer.h @@ -23,7 +23,6 @@ #include #include -#include "base/macros.h" #include "minidump/minidump_stream_writer.h" #include "minidump/minidump_thread_id_map.h" @@ -37,6 +36,10 @@ class MinidumpMemoryListWriter; class MinidumpExceptionWriter final : public internal::MinidumpStreamWriter { public: MinidumpExceptionWriter(); + + MinidumpExceptionWriter(const MinidumpExceptionWriter&) = delete; + MinidumpExceptionWriter& operator=(const MinidumpExceptionWriter&) = delete; + ~MinidumpExceptionWriter() override; //! \brief Initializes the MINIDUMP_EXCEPTION_STREAM based on \a @@ -117,8 +120,6 @@ class MinidumpExceptionWriter final : public internal::MinidumpStreamWriter { private: MINIDUMP_EXCEPTION_STREAM exception_; std::unique_ptr context_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpExceptionWriter); }; } // namespace crashpad diff --git a/minidump/minidump_file_writer.h b/minidump/minidump_file_writer.h index 0a1b064f..443a947e 100644 --- a/minidump/minidump_file_writer.h +++ b/minidump/minidump_file_writer.h @@ -23,7 +23,6 @@ #include #include -#include "base/macros.h" #include "minidump/minidump_extensions.h" #include "minidump/minidump_stream_writer.h" #include "minidump/minidump_writable.h" @@ -41,6 +40,10 @@ class MinidumpUserExtensionStreamDataSource; class MinidumpFileWriter final : public internal::MinidumpWritable { public: MinidumpFileWriter(); + + MinidumpFileWriter(const MinidumpFileWriter&) = delete; + MinidumpFileWriter& operator=(const MinidumpFileWriter&) = delete; + ~MinidumpFileWriter() override; //! \brief Initializes the MinidumpFileWriter and populates it with @@ -163,8 +166,6 @@ class MinidumpFileWriter final : public internal::MinidumpWritable { // Protects against multiple streams with the same ID being added. std::set stream_types_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpFileWriter); }; } // namespace crashpad diff --git a/minidump/minidump_file_writer_test.cc b/minidump/minidump_file_writer_test.cc index c5d2845d..efeaeab4 100644 --- a/minidump/minidump_file_writer_test.cc +++ b/minidump/minidump_file_writer_test.cc @@ -64,6 +64,9 @@ class TestStream final : public internal::MinidumpStreamWriter { uint8_t stream_value) : stream_data_(stream_size, stream_value), stream_type_(stream_type) {} + TestStream(const TestStream&) = delete; + TestStream& operator=(const TestStream&) = delete; + ~TestStream() override {} // MinidumpStreamWriter: @@ -86,13 +89,15 @@ class TestStream final : public internal::MinidumpStreamWriter { private: std::string stream_data_; MinidumpStreamType stream_type_; - - DISALLOW_COPY_AND_ASSIGN(TestStream); }; class StringFileOutputStream : public OutputStreamInterface { public: StringFileOutputStream() = default; + + StringFileOutputStream(const StringFileOutputStream&) = delete; + StringFileOutputStream& operator=(const StringFileOutputStream&) = delete; + ~StringFileOutputStream() override = default; bool Write(const uint8_t* data, size_t size) override { return string_file_.Write(data, size); @@ -102,8 +107,6 @@ class StringFileOutputStream : public OutputStreamInterface { private: StringFile string_file_; - - DISALLOW_COPY_AND_ASSIGN(StringFileOutputStream); }; TEST(MinidumpFileWriter, OneStream) { diff --git a/minidump/minidump_handle_writer.h b/minidump/minidump_handle_writer.h index f8eaeef9..348f55e8 100644 --- a/minidump/minidump_handle_writer.h +++ b/minidump/minidump_handle_writer.h @@ -43,6 +43,10 @@ namespace crashpad { class MinidumpHandleDataWriter final : public internal::MinidumpStreamWriter { public: MinidumpHandleDataWriter(); + + MinidumpHandleDataWriter(const MinidumpHandleDataWriter&) = delete; + MinidumpHandleDataWriter& operator=(const MinidumpHandleDataWriter&) = delete; + ~MinidumpHandleDataWriter() override; //! \brief Adds a MINIDUMP_HANDLE_DESCRIPTOR for each handle in \a @@ -68,8 +72,6 @@ class MinidumpHandleDataWriter final : public internal::MinidumpStreamWriter { MINIDUMP_HANDLE_DATA_STREAM handle_data_stream_base_; std::vector handle_descriptors_; std::map strings_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpHandleDataWriter); }; } // namespace crashpad diff --git a/minidump/minidump_memory_info_writer.h b/minidump/minidump_memory_info_writer.h index ec660197..a4159a7d 100644 --- a/minidump/minidump_memory_info_writer.h +++ b/minidump/minidump_memory_info_writer.h @@ -22,7 +22,6 @@ #include -#include "base/macros.h" #include "minidump/minidump_stream_writer.h" #include "minidump/minidump_writable.h" @@ -39,6 +38,11 @@ class MinidumpMemoryInfoListWriter final : public internal::MinidumpStreamWriter { public: MinidumpMemoryInfoListWriter(); + + MinidumpMemoryInfoListWriter(const MinidumpMemoryInfoListWriter&) = delete; + MinidumpMemoryInfoListWriter& operator=(const MinidumpMemoryInfoListWriter&) = + delete; + ~MinidumpMemoryInfoListWriter() override; //! \brief Initializes a MINIDUMP_MEMORY_INFO_LIST based on \a memory_map. @@ -63,8 +67,6 @@ class MinidumpMemoryInfoListWriter final private: MINIDUMP_MEMORY_INFO_LIST memory_info_list_base_; std::vector items_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpMemoryInfoListWriter); }; } // namespace crashpad diff --git a/minidump/minidump_memory_writer.h b/minidump/minidump_memory_writer.h index 4f4f27f6..ef18de24 100644 --- a/minidump/minidump_memory_writer.h +++ b/minidump/minidump_memory_writer.h @@ -23,7 +23,6 @@ #include #include -#include "base/macros.h" #include "minidump/minidump_stream_writer.h" #include "minidump/minidump_writable.h" #include "snapshot/memory_snapshot.h" @@ -37,6 +36,11 @@ class SnapshotMinidumpMemoryWriter : public internal::MinidumpWritable, public MemorySnapshot::Delegate { public: explicit SnapshotMinidumpMemoryWriter(const MemorySnapshot* memory_snapshot); + + SnapshotMinidumpMemoryWriter(const SnapshotMinidumpMemoryWriter&) = delete; + SnapshotMinidumpMemoryWriter& operator=(const SnapshotMinidumpMemoryWriter&) = + delete; + ~SnapshotMinidumpMemoryWriter() override; //! \brief Returns a MINIDUMP_MEMORY_DESCRIPTOR referencing the data that this @@ -111,8 +115,6 @@ class SnapshotMinidumpMemoryWriter : public internal::MinidumpWritable, std::vector registered_memory_descriptors_; const MemorySnapshot* memory_snapshot_; FileWriterInterface* file_writer_; - - DISALLOW_COPY_AND_ASSIGN(SnapshotMinidumpMemoryWriter); }; //! \brief The writer for a MINIDUMP_MEMORY_LIST stream in a minidump file, @@ -120,6 +122,10 @@ class SnapshotMinidumpMemoryWriter : public internal::MinidumpWritable, class MinidumpMemoryListWriter final : public internal::MinidumpStreamWriter { public: MinidumpMemoryListWriter(); + + MinidumpMemoryListWriter(const MinidumpMemoryListWriter&) = delete; + MinidumpMemoryListWriter& operator=(const MinidumpMemoryListWriter&) = delete; + ~MinidumpMemoryListWriter() override; //! \brief Adds a concrete initialized SnapshotMinidumpMemoryWriter for each @@ -197,8 +203,6 @@ class MinidumpMemoryListWriter final : public internal::MinidumpStreamWriter { snapshots_created_during_merge_; std::vector all_memory_writers_; // weak MINIDUMP_MEMORY_LIST memory_list_base_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpMemoryListWriter); }; } // namespace crashpad diff --git a/minidump/minidump_memory_writer_test.cc b/minidump/minidump_memory_writer_test.cc index 24dac9bc..02a352fc 100644 --- a/minidump/minidump_memory_writer_test.cc +++ b/minidump/minidump_memory_writer_test.cc @@ -235,6 +235,9 @@ class TestMemoryStream final : public internal::MinidumpStreamWriter { TestMemoryStream(uint64_t base_address, size_t size, uint8_t value) : MinidumpStreamWriter(), memory_(base_address, size, value) {} + TestMemoryStream(const TestMemoryStream&) = delete; + TestMemoryStream& operator=(const TestMemoryStream&) = delete; + ~TestMemoryStream() override {} TestMinidumpMemoryWriter* memory() { @@ -266,8 +269,6 @@ class TestMemoryStream final : public internal::MinidumpStreamWriter { private: TestMinidumpMemoryWriter memory_; - - DISALLOW_COPY_AND_ASSIGN(TestMemoryStream); }; TEST(MinidumpMemoryWriter, ExtraMemory) { diff --git a/minidump/minidump_misc_info_writer.h b/minidump/minidump_misc_info_writer.h index 0905e805..9d89fe64 100644 --- a/minidump/minidump_misc_info_writer.h +++ b/minidump/minidump_misc_info_writer.h @@ -24,7 +24,6 @@ #include -#include "base/macros.h" #include "build/build_config.h" #include "minidump/minidump_stream_writer.h" #include "minidump/minidump_writable.h" @@ -60,6 +59,10 @@ std::string MinidumpMiscInfoDebugBuildString(); class MinidumpMiscInfoWriter final : public internal::MinidumpStreamWriter { public: MinidumpMiscInfoWriter(); + + MinidumpMiscInfoWriter(const MinidumpMiscInfoWriter&) = delete; + MinidumpMiscInfoWriter& operator=(const MinidumpMiscInfoWriter&) = delete; + ~MinidumpMiscInfoWriter() override; //! \brief Initializes MINIDUMP_MISC_INFO_N based on \a process_snapshot. @@ -135,8 +138,6 @@ class MinidumpMiscInfoWriter final : public internal::MinidumpStreamWriter { MINIDUMP_MISC_INFO_N misc_info_; bool has_xstate_data_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpMiscInfoWriter); }; //! \brief Conversion functions from a native UTF16 C-string to a char16_t diff --git a/minidump/minidump_module_crashpad_info_writer.h b/minidump/minidump_module_crashpad_info_writer.h index 850db040..9af5c83f 100644 --- a/minidump/minidump_module_crashpad_info_writer.h +++ b/minidump/minidump_module_crashpad_info_writer.h @@ -21,7 +21,6 @@ #include #include -#include "base/macros.h" #include "minidump/minidump_extensions.h" #include "minidump/minidump_string_writer.h" #include "minidump/minidump_writable.h" @@ -38,6 +37,12 @@ class MinidumpModuleCrashpadInfoWriter final : public internal::MinidumpWritable { public: MinidumpModuleCrashpadInfoWriter(); + + MinidumpModuleCrashpadInfoWriter(const MinidumpModuleCrashpadInfoWriter&) = + delete; + MinidumpModuleCrashpadInfoWriter& operator=( + const MinidumpModuleCrashpadInfoWriter&) = delete; + ~MinidumpModuleCrashpadInfoWriter() override; //! \brief Initializes MinidumpModuleCrashpadInfo based on \a module_snapshot. @@ -107,8 +112,6 @@ class MinidumpModuleCrashpadInfoWriter final std::unique_ptr list_annotations_; std::unique_ptr simple_annotations_; std::unique_ptr annotation_objects_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpModuleCrashpadInfoWriter); }; //! \brief The writer for a MinidumpModuleCrashpadInfoList object in a minidump @@ -117,6 +120,12 @@ class MinidumpModuleCrashpadInfoListWriter final : public internal::MinidumpWritable { public: MinidumpModuleCrashpadInfoListWriter(); + + MinidumpModuleCrashpadInfoListWriter( + const MinidumpModuleCrashpadInfoListWriter&) = delete; + MinidumpModuleCrashpadInfoListWriter& operator=( + const MinidumpModuleCrashpadInfoListWriter&) = delete; + ~MinidumpModuleCrashpadInfoListWriter() override; //! \brief Adds an initialized MinidumpModuleCrashpadInfo for modules in \a @@ -171,8 +180,6 @@ class MinidumpModuleCrashpadInfoListWriter final module_crashpad_infos_; std::vector module_crashpad_info_links_; MinidumpModuleCrashpadInfoList module_crashpad_info_list_base_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpModuleCrashpadInfoListWriter); }; } // namespace crashpad diff --git a/minidump/minidump_module_writer.h b/minidump/minidump_module_writer.h index 423b9b50..d450892c 100644 --- a/minidump/minidump_module_writer.h +++ b/minidump/minidump_module_writer.h @@ -25,7 +25,6 @@ #include #include -#include "base/macros.h" #include "minidump/minidump_extensions.h" #include "minidump/minidump_stream_writer.h" #include "minidump/minidump_writable.h" @@ -42,13 +41,15 @@ class MinidumpUTF16StringWriter; //! MINIDUMP_MODULE::CvRecord in minidump files. class MinidumpModuleCodeViewRecordWriter : public internal::MinidumpWritable { public: + MinidumpModuleCodeViewRecordWriter( + const MinidumpModuleCodeViewRecordWriter&) = delete; + MinidumpModuleCodeViewRecordWriter& operator=( + const MinidumpModuleCodeViewRecordWriter&) = delete; + ~MinidumpModuleCodeViewRecordWriter() override; protected: MinidumpModuleCodeViewRecordWriter() : MinidumpWritable() {} - - private: - DISALLOW_COPY_AND_ASSIGN(MinidumpModuleCodeViewRecordWriter); }; namespace internal { @@ -59,6 +60,11 @@ template class MinidumpModuleCodeViewRecordPDBLinkWriter : public MinidumpModuleCodeViewRecordWriter { public: + MinidumpModuleCodeViewRecordPDBLinkWriter( + const MinidumpModuleCodeViewRecordPDBLinkWriter&) = delete; + MinidumpModuleCodeViewRecordPDBLinkWriter& operator=( + const MinidumpModuleCodeViewRecordPDBLinkWriter&) = delete; + //! \brief Sets the name of the `.pdb` file being linked to. void SetPDBName(const std::string& pdb_name) { pdb_name_ = pdb_name; } @@ -79,8 +85,6 @@ class MinidumpModuleCodeViewRecordPDBLinkWriter private: CodeViewRecordType codeview_record_; std::string pdb_name_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpModuleCodeViewRecordPDBLinkWriter); }; } // namespace internal @@ -97,13 +101,15 @@ class MinidumpModuleCodeViewRecordPDB20Writer final : internal::MinidumpModuleCodeViewRecordPDBLinkWriter< CodeViewRecordPDB20>() {} + MinidumpModuleCodeViewRecordPDB20Writer( + const MinidumpModuleCodeViewRecordPDB20Writer&) = delete; + MinidumpModuleCodeViewRecordPDB20Writer& operator=( + const MinidumpModuleCodeViewRecordPDB20Writer&) = delete; + ~MinidumpModuleCodeViewRecordPDB20Writer() override; //! \brief Sets CodeViewRecordPDB20::timestamp and CodeViewRecordPDB20::age. void SetTimestampAndAge(time_t timestamp, uint32_t age); - - private: - DISALLOW_COPY_AND_ASSIGN(MinidumpModuleCodeViewRecordPDB20Writer); }; //! \brief The writer for a CodeViewRecordPDB70 object in a minidump file. @@ -115,6 +121,11 @@ class MinidumpModuleCodeViewRecordPDB70Writer final : internal::MinidumpModuleCodeViewRecordPDBLinkWriter< CodeViewRecordPDB70>() {} + MinidumpModuleCodeViewRecordPDB70Writer( + const MinidumpModuleCodeViewRecordPDB70Writer&) = delete; + MinidumpModuleCodeViewRecordPDB70Writer& operator=( + const MinidumpModuleCodeViewRecordPDB70Writer&) = delete; + ~MinidumpModuleCodeViewRecordPDB70Writer() override; //! \brief Initializes the CodeViewRecordPDB70 based on \a module_snapshot. @@ -131,9 +142,6 @@ class MinidumpModuleCodeViewRecordPDB70Writer final codeview_record()->uuid = uuid; codeview_record()->age = age; } - - private: - DISALLOW_COPY_AND_ASSIGN(MinidumpModuleCodeViewRecordPDB70Writer); }; //! \brief The writer for a CodeViewRecordBuildID object in a minidump file. @@ -141,6 +149,12 @@ class MinidumpModuleCodeViewRecordBuildIDWriter final : public MinidumpModuleCodeViewRecordWriter { public: MinidumpModuleCodeViewRecordBuildIDWriter(); + + MinidumpModuleCodeViewRecordBuildIDWriter( + const MinidumpModuleCodeViewRecordBuildIDWriter&) = delete; + MinidumpModuleCodeViewRecordBuildIDWriter& operator=( + const MinidumpModuleCodeViewRecordBuildIDWriter&) = delete; + ~MinidumpModuleCodeViewRecordBuildIDWriter() override; //! \brief Sets the build ID used for symbol lookup. @@ -152,8 +166,6 @@ class MinidumpModuleCodeViewRecordBuildIDWriter final bool WriteObject(FileWriterInterface* file_writer) override; std::vector build_id_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpModuleCodeViewRecordBuildIDWriter); }; //! \brief The writer for an IMAGE_DEBUG_MISC object in a minidump file. @@ -163,6 +175,12 @@ class MinidumpModuleMiscDebugRecordWriter final : public internal::MinidumpWritable { public: MinidumpModuleMiscDebugRecordWriter(); + + MinidumpModuleMiscDebugRecordWriter( + const MinidumpModuleMiscDebugRecordWriter&) = delete; + MinidumpModuleMiscDebugRecordWriter& operator=( + const MinidumpModuleMiscDebugRecordWriter&) = delete; + ~MinidumpModuleMiscDebugRecordWriter() override; //! \brief Sets IMAGE_DEBUG_MISC::DataType. @@ -189,8 +207,6 @@ class MinidumpModuleMiscDebugRecordWriter final IMAGE_DEBUG_MISC image_debug_misc_; std::string data_; std::u16string data_utf16_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpModuleMiscDebugRecordWriter); }; //! \brief The writer for a MINIDUMP_MODULE object in a minidump file. @@ -202,6 +218,10 @@ class MinidumpModuleMiscDebugRecordWriter final class MinidumpModuleWriter final : public internal::MinidumpWritable { public: MinidumpModuleWriter(); + + MinidumpModuleWriter(const MinidumpModuleWriter&) = delete; + MinidumpModuleWriter& operator=(const MinidumpModuleWriter&) = delete; + ~MinidumpModuleWriter() override; //! \brief Initializes the MINIDUMP_MODULE based on \a module_snapshot. @@ -320,8 +340,6 @@ class MinidumpModuleWriter final : public internal::MinidumpWritable { std::unique_ptr name_; std::unique_ptr codeview_record_; std::unique_ptr misc_debug_record_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpModuleWriter); }; //! \brief The writer for a MINIDUMP_MODULE_LIST stream in a minidump file, @@ -329,6 +347,10 @@ class MinidumpModuleWriter final : public internal::MinidumpWritable { class MinidumpModuleListWriter final : public internal::MinidumpStreamWriter { public: MinidumpModuleListWriter(); + + MinidumpModuleListWriter(const MinidumpModuleListWriter&) = delete; + MinidumpModuleListWriter& operator=(const MinidumpModuleListWriter&) = delete; + ~MinidumpModuleListWriter() override; //! \brief Adds an initialized MINIDUMP_MODULE for each module in \a @@ -363,8 +385,6 @@ class MinidumpModuleListWriter final : public internal::MinidumpStreamWriter { private: std::vector> modules_; MINIDUMP_MODULE_LIST module_list_base_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpModuleListWriter); }; } // namespace crashpad diff --git a/minidump/minidump_rva_list_writer.h b/minidump/minidump_rva_list_writer.h index af584f13..ba7bd686 100644 --- a/minidump/minidump_rva_list_writer.h +++ b/minidump/minidump_rva_list_writer.h @@ -21,7 +21,6 @@ #include #include -#include "base/macros.h" #include "minidump/minidump_extensions.h" #include "minidump/minidump_writable.h" @@ -33,6 +32,10 @@ namespace internal { class MinidumpRVAListWriter : public MinidumpWritable { protected: MinidumpRVAListWriter(); + + MinidumpRVAListWriter(const MinidumpRVAListWriter&) = delete; + MinidumpRVAListWriter& operator=(const MinidumpRVAListWriter&) = delete; + ~MinidumpRVAListWriter() override; //! \brief Adds an ::RVA referencing an MinidumpWritable to the @@ -68,8 +71,6 @@ class MinidumpRVAListWriter : public MinidumpWritable { std::unique_ptr rva_list_base_; std::vector> children_; std::vector child_rvas_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpRVAListWriter); }; } // namespace internal diff --git a/minidump/minidump_rva_list_writer_test.cc b/minidump/minidump_rva_list_writer_test.cc index 8ae2b9e8..f99d9435 100644 --- a/minidump/minidump_rva_list_writer_test.cc +++ b/minidump/minidump_rva_list_writer_test.cc @@ -31,15 +31,17 @@ namespace { class TestMinidumpRVAListWriter final : public internal::MinidumpRVAListWriter { public: TestMinidumpRVAListWriter() : MinidumpRVAListWriter() {} + + TestMinidumpRVAListWriter(const TestMinidumpRVAListWriter&) = delete; + TestMinidumpRVAListWriter& operator=(const TestMinidumpRVAListWriter&) = + delete; + ~TestMinidumpRVAListWriter() override {} void AddChild(uint32_t value) { auto child = std::make_unique(value); MinidumpRVAListWriter::AddChild(std::move(child)); } - - private: - DISALLOW_COPY_AND_ASSIGN(TestMinidumpRVAListWriter); }; TEST(MinidumpRVAListWriter, Empty) { diff --git a/minidump/minidump_simple_string_dictionary_writer.h b/minidump/minidump_simple_string_dictionary_writer.h index f2662bcc..5e46a647 100644 --- a/minidump/minidump_simple_string_dictionary_writer.h +++ b/minidump/minidump_simple_string_dictionary_writer.h @@ -22,7 +22,6 @@ #include #include -#include "base/macros.h" #include "minidump/minidump_extensions.h" #include "minidump/minidump_string_writer.h" #include "minidump/minidump_writable.h" @@ -41,6 +40,12 @@ class MinidumpSimpleStringDictionaryEntryWriter final : public internal::MinidumpWritable { public: MinidumpSimpleStringDictionaryEntryWriter(); + + MinidumpSimpleStringDictionaryEntryWriter( + const MinidumpSimpleStringDictionaryEntryWriter&) = delete; + MinidumpSimpleStringDictionaryEntryWriter& operator=( + const MinidumpSimpleStringDictionaryEntryWriter&) = delete; + ~MinidumpSimpleStringDictionaryEntryWriter() override; //! \brief Returns a MinidumpSimpleStringDictionaryEntry referencing this @@ -76,8 +81,6 @@ class MinidumpSimpleStringDictionaryEntryWriter final struct MinidumpSimpleStringDictionaryEntry entry_; internal::MinidumpUTF8StringWriter key_; internal::MinidumpUTF8StringWriter value_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpSimpleStringDictionaryEntryWriter); }; //! \brief The writer for a MinidumpSimpleStringDictionary object in a minidump @@ -89,6 +92,12 @@ class MinidumpSimpleStringDictionaryWriter final : public internal::MinidumpWritable { public: MinidumpSimpleStringDictionaryWriter(); + + MinidumpSimpleStringDictionaryWriter( + const MinidumpSimpleStringDictionaryWriter&) = delete; + MinidumpSimpleStringDictionaryWriter& operator=( + const MinidumpSimpleStringDictionaryWriter&) = delete; + ~MinidumpSimpleStringDictionaryWriter() override; //! \brief Adds an initialized MinidumpSimpleStringDictionaryEntryWriter for @@ -138,8 +147,6 @@ class MinidumpSimpleStringDictionaryWriter final std::unique_ptr simple_string_dictionary_base_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpSimpleStringDictionaryWriter); }; } // namespace crashpad diff --git a/minidump/minidump_stream_writer.h b/minidump/minidump_stream_writer.h index 894889ae..447566b9 100644 --- a/minidump/minidump_stream_writer.h +++ b/minidump/minidump_stream_writer.h @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" #include "minidump/minidump_extensions.h" #include "minidump/minidump_writable.h" @@ -32,6 +31,9 @@ namespace internal { //! MinidumpFileWriter object. class MinidumpStreamWriter : public MinidumpWritable { public: + MinidumpStreamWriter(const MinidumpStreamWriter&) = delete; + MinidumpStreamWriter& operator=(const MinidumpStreamWriter&) = delete; + ~MinidumpStreamWriter() override; //! \brief Returns an object’s stream type. @@ -56,8 +58,6 @@ class MinidumpStreamWriter : public MinidumpWritable { private: MINIDUMP_DIRECTORY directory_list_entry_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpStreamWriter); }; } // namespace internal diff --git a/minidump/minidump_string_writer.h b/minidump/minidump_string_writer.h index 33186dd1..d11e8cc1 100644 --- a/minidump/minidump_string_writer.h +++ b/minidump/minidump_string_writer.h @@ -23,7 +23,6 @@ #include #include -#include "base/macros.h" #include "minidump/minidump_extensions.h" #include "minidump/minidump_rva_list_writer.h" #include "minidump/minidump_writable.h" @@ -55,6 +54,10 @@ template class MinidumpStringWriter : public MinidumpWritable { public: MinidumpStringWriter(); + + MinidumpStringWriter(const MinidumpStringWriter&) = delete; + MinidumpStringWriter& operator=(const MinidumpStringWriter&) = delete; + ~MinidumpStringWriter() override; protected: @@ -78,8 +81,6 @@ class MinidumpStringWriter : public MinidumpWritable { private: std::unique_ptr string_base_; StringType string_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpStringWriter); }; //! \brief Writes a variable-length UTF-16-encoded MINIDUMP_STRING to a minidump @@ -91,6 +92,11 @@ class MinidumpUTF16StringWriter final : public MinidumpStringWriter { public: MinidumpUTF16StringWriter() : MinidumpStringWriter() {} + + MinidumpUTF16StringWriter(const MinidumpUTF16StringWriter&) = delete; + MinidumpUTF16StringWriter& operator=(const MinidumpUTF16StringWriter&) = + delete; + ~MinidumpUTF16StringWriter() override; //! \brief Converts a UTF-8 string to UTF-16 and sets it as the string to be @@ -98,9 +104,6 @@ class MinidumpUTF16StringWriter final //! //! \note Valid in #kStateMutable. void SetUTF8(const std::string& string_utf8); - - private: - DISALLOW_COPY_AND_ASSIGN(MinidumpUTF16StringWriter); }; //! \brief Writes a variable-length UTF-8-encoded MinidumpUTF8String to a @@ -112,6 +115,10 @@ class MinidumpUTF8StringWriter final : public MinidumpStringWriter { public: MinidumpUTF8StringWriter() : MinidumpStringWriter() {} + + MinidumpUTF8StringWriter(const MinidumpUTF8StringWriter&) = delete; + MinidumpUTF8StringWriter& operator=(const MinidumpUTF8StringWriter&) = delete; + ~MinidumpUTF8StringWriter() override; //! \brief Sets the string to be written. @@ -123,9 +130,6 @@ class MinidumpUTF8StringWriter final //! //! \note Valid in any state. const std::string& UTF8() const { return string(); } - - private: - DISALLOW_COPY_AND_ASSIGN(MinidumpUTF8StringWriter); }; //! \brief The writer for a MinidumpRVAList object in a minidump file, @@ -134,6 +138,10 @@ template class MinidumpStringListWriter final : public MinidumpRVAListWriter { public: MinidumpStringListWriter(); + + MinidumpStringListWriter(const MinidumpStringListWriter&) = delete; + MinidumpStringListWriter& operator=(const MinidumpStringListWriter&) = delete; + ~MinidumpStringListWriter() override; //! \brief Adds a new \a Traits::MinidumpStringWriterType for each element in @@ -166,9 +174,6 @@ class MinidumpStringListWriter final : public MinidumpRVAListWriter { //! //! \return `true` if the object is useful, `false` otherwise. bool IsUseful() const; - - private: - DISALLOW_COPY_AND_ASSIGN(MinidumpStringListWriter); }; } // namespace internal diff --git a/minidump/minidump_system_info_writer.h b/minidump/minidump_system_info_writer.h index 866530c3..07dbcf35 100644 --- a/minidump/minidump_system_info_writer.h +++ b/minidump/minidump_system_info_writer.h @@ -24,7 +24,6 @@ #include #include -#include "base/macros.h" #include "minidump/minidump_extensions.h" #include "minidump/minidump_stream_writer.h" #include "minidump/minidump_writable.h" @@ -41,6 +40,10 @@ class MinidumpUTF16StringWriter; class MinidumpSystemInfoWriter final : public internal::MinidumpStreamWriter { public: MinidumpSystemInfoWriter(); + + MinidumpSystemInfoWriter(const MinidumpSystemInfoWriter&) = delete; + MinidumpSystemInfoWriter& operator=(const MinidumpSystemInfoWriter&) = delete; + ~MinidumpSystemInfoWriter() override; //! \brief Initializes MINIDUMP_SYSTEM_INFO based on \a system_snapshot. @@ -188,8 +191,6 @@ class MinidumpSystemInfoWriter final : public internal::MinidumpStreamWriter { private: MINIDUMP_SYSTEM_INFO system_info_; std::unique_ptr csd_version_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpSystemInfoWriter); }; } // namespace crashpad diff --git a/minidump/minidump_thread_id_map_test.cc b/minidump/minidump_thread_id_map_test.cc index 0c48c019..e972aebc 100644 --- a/minidump/minidump_thread_id_map_test.cc +++ b/minidump/minidump_thread_id_map_test.cc @@ -19,7 +19,6 @@ #include #include "base/cxx17_backports.h" -#include "base/macros.h" #include "gtest/gtest.h" #include "snapshot/test/test_thread_snapshot.h" @@ -35,6 +34,9 @@ class MinidumpThreadIDMapTest : public testing::Test { test_thread_snapshots_() { } + MinidumpThreadIDMapTest(const MinidumpThreadIDMapTest&) = delete; + MinidumpThreadIDMapTest& operator=(const MinidumpThreadIDMapTest&) = delete; + ~MinidumpThreadIDMapTest() override {} // testing::Test: @@ -72,8 +74,6 @@ class MinidumpThreadIDMapTest : public testing::Test { private: std::vector thread_snapshots_; TestThreadSnapshot test_thread_snapshots_[5]; - - DISALLOW_COPY_AND_ASSIGN(MinidumpThreadIDMapTest); }; TEST_F(MinidumpThreadIDMapTest, NoThreads) { diff --git a/minidump/minidump_thread_writer.h b/minidump/minidump_thread_writer.h index 82092e2b..9ea428bf 100644 --- a/minidump/minidump_thread_writer.h +++ b/minidump/minidump_thread_writer.h @@ -23,7 +23,6 @@ #include #include -#include "base/macros.h" #include "minidump/minidump_stream_writer.h" #include "minidump/minidump_thread_id_map.h" #include "minidump/minidump_writable.h" @@ -44,6 +43,10 @@ class ThreadSnapshot; class MinidumpThreadWriter final : public internal::MinidumpWritable { public: MinidumpThreadWriter(); + + MinidumpThreadWriter(const MinidumpThreadWriter&) = delete; + MinidumpThreadWriter& operator=(const MinidumpThreadWriter&) = delete; + ~MinidumpThreadWriter() override; //! \brief Initializes the MINIDUMP_THREAD based on \a thread_snapshot. @@ -131,8 +134,6 @@ class MinidumpThreadWriter final : public internal::MinidumpWritable { MINIDUMP_THREAD thread_; std::unique_ptr stack_; std::unique_ptr context_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpThreadWriter); }; //! \brief The writer for a MINIDUMP_THREAD_LIST stream in a minidump file, @@ -140,6 +141,10 @@ class MinidumpThreadWriter final : public internal::MinidumpWritable { class MinidumpThreadListWriter final : public internal::MinidumpStreamWriter { public: MinidumpThreadListWriter(); + + MinidumpThreadListWriter(const MinidumpThreadListWriter&) = delete; + MinidumpThreadListWriter& operator=(const MinidumpThreadListWriter&) = delete; + ~MinidumpThreadListWriter() override; //! \brief Adds an initialized MINIDUMP_THREAD for each thread in \a @@ -205,8 +210,6 @@ class MinidumpThreadListWriter final : public internal::MinidumpStreamWriter { std::vector> threads_; MinidumpMemoryListWriter* memory_list_writer_; // weak MINIDUMP_THREAD_LIST thread_list_base_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpThreadListWriter); }; } // namespace crashpad diff --git a/minidump/minidump_unloaded_module_writer.h b/minidump/minidump_unloaded_module_writer.h index 97651dba..6b3ac905 100644 --- a/minidump/minidump_unloaded_module_writer.h +++ b/minidump/minidump_unloaded_module_writer.h @@ -23,7 +23,6 @@ #include #include -#include "base/macros.h" #include "minidump/minidump_stream_writer.h" #include "minidump/minidump_string_writer.h" #include "minidump/minidump_writable.h" @@ -41,6 +40,11 @@ namespace crashpad { class MinidumpUnloadedModuleWriter final : public internal::MinidumpWritable { public: MinidumpUnloadedModuleWriter(); + + MinidumpUnloadedModuleWriter(const MinidumpUnloadedModuleWriter&) = delete; + MinidumpUnloadedModuleWriter& operator=(const MinidumpUnloadedModuleWriter&) = + delete; + ~MinidumpUnloadedModuleWriter() override; //! \brief Initializes the MINIDUMP_UNLOADED_MODULE based on \a @@ -97,8 +101,6 @@ class MinidumpUnloadedModuleWriter final : public internal::MinidumpWritable { private: MINIDUMP_UNLOADED_MODULE unloaded_module_; std::unique_ptr name_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpUnloadedModuleWriter); }; //! \brief The writer for a MINIDUMP_UNLOADED_MODULE_LIST stream in a minidump @@ -107,6 +109,12 @@ class MinidumpUnloadedModuleListWriter final : public internal::MinidumpStreamWriter { public: MinidumpUnloadedModuleListWriter(); + + MinidumpUnloadedModuleListWriter(const MinidumpUnloadedModuleListWriter&) = + delete; + MinidumpUnloadedModuleListWriter& operator=( + const MinidumpUnloadedModuleListWriter&) = delete; + ~MinidumpUnloadedModuleListWriter() override; //! \brief Adds an initialized MINIDUMP_UNLOADED_MODULE for each unloaded @@ -145,8 +153,6 @@ class MinidumpUnloadedModuleListWriter final private: std::vector> unloaded_modules_; MINIDUMP_UNLOADED_MODULE_LIST unloaded_module_list_base_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpUnloadedModuleListWriter); }; } // namespace crashpad diff --git a/minidump/minidump_user_extension_stream_data_source.h b/minidump/minidump_user_extension_stream_data_source.h index 3eb0c874..4a45e45f 100644 --- a/minidump/minidump_user_extension_stream_data_source.h +++ b/minidump/minidump_user_extension_stream_data_source.h @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" #include "minidump/minidump_extensions.h" @@ -54,6 +53,12 @@ class MinidumpUserExtensionStreamDataSource { //! //! \param[in] stream_type The type of the user extension stream. explicit MinidumpUserExtensionStreamDataSource(uint32_t stream_type); + + MinidumpUserExtensionStreamDataSource( + const MinidumpUserExtensionStreamDataSource&) = delete; + MinidumpUserExtensionStreamDataSource& operator=( + const MinidumpUserExtensionStreamDataSource&) = delete; + virtual ~MinidumpUserExtensionStreamDataSource(); MinidumpStreamType stream_type() const { return stream_type_; } @@ -75,8 +80,6 @@ class MinidumpUserExtensionStreamDataSource { private: MinidumpStreamType stream_type_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpUserExtensionStreamDataSource); }; } // namespace crashpad diff --git a/minidump/minidump_user_stream_writer.cc b/minidump/minidump_user_stream_writer.cc index 29bb71c6..4fbe2525 100644 --- a/minidump/minidump_user_stream_writer.cc +++ b/minidump/minidump_user_stream_writer.cc @@ -33,6 +33,9 @@ class MinidumpUserStreamWriter::SnapshotContentsWriter final explicit SnapshotContentsWriter(const MemorySnapshot* snapshot) : snapshot_(snapshot), writer_(nullptr) {} + SnapshotContentsWriter(const SnapshotContentsWriter&) = delete; + SnapshotContentsWriter& operator=(const SnapshotContentsWriter&) = delete; + bool WriteContents(FileWriterInterface* writer) override { DCHECK(!writer_); @@ -52,8 +55,6 @@ class MinidumpUserStreamWriter::SnapshotContentsWriter final private: const MemorySnapshot* snapshot_; FileWriterInterface* writer_; - - DISALLOW_COPY_AND_ASSIGN(SnapshotContentsWriter); }; class MinidumpUserStreamWriter::ExtensionStreamContentsWriter final @@ -64,6 +65,10 @@ class MinidumpUserStreamWriter::ExtensionStreamContentsWriter final std::unique_ptr data_source) : data_source_(std::move(data_source)), writer_(nullptr) {} + ExtensionStreamContentsWriter(const ExtensionStreamContentsWriter&) = delete; + ExtensionStreamContentsWriter& operator=( + const ExtensionStreamContentsWriter&) = delete; + bool WriteContents(FileWriterInterface* writer) override { DCHECK(!writer_); @@ -80,8 +85,6 @@ class MinidumpUserStreamWriter::ExtensionStreamContentsWriter final private: std::unique_ptr data_source_; FileWriterInterface* writer_; - - DISALLOW_COPY_AND_ASSIGN(ExtensionStreamContentsWriter); }; MinidumpUserStreamWriter::MinidumpUserStreamWriter() : stream_type_() {} diff --git a/minidump/minidump_user_stream_writer.h b/minidump/minidump_user_stream_writer.h index c1bad0ac..8f123e2e 100644 --- a/minidump/minidump_user_stream_writer.h +++ b/minidump/minidump_user_stream_writer.h @@ -22,7 +22,6 @@ #include #include -#include "base/macros.h" #include "minidump/minidump_extensions.h" #include "minidump/minidump_stream_writer.h" #include "minidump/minidump_writable.h" @@ -35,6 +34,10 @@ namespace crashpad { class MinidumpUserStreamWriter final : public internal::MinidumpStreamWriter { public: MinidumpUserStreamWriter(); + + MinidumpUserStreamWriter(const MinidumpUserStreamWriter&) = delete; + MinidumpUserStreamWriter& operator=(const MinidumpUserStreamWriter&) = delete; + ~MinidumpUserStreamWriter() override; //! \brief Initializes a MINIDUMP_USER_STREAM based on \a stream. @@ -70,8 +73,6 @@ class MinidumpUserStreamWriter final : public internal::MinidumpStreamWriter { std::unique_ptr contents_writer_; MinidumpStreamType stream_type_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpUserStreamWriter); }; } // namespace crashpad diff --git a/minidump/minidump_writable.h b/minidump/minidump_writable.h index b2ebf04e..bc36cb5c 100644 --- a/minidump/minidump_writable.h +++ b/minidump/minidump_writable.h @@ -22,7 +22,6 @@ #include #include -#include "base/macros.h" #include "util/file/file_io.h" namespace crashpad { @@ -35,6 +34,9 @@ namespace internal { //! file. class MinidumpWritable { public: + MinidumpWritable(const MinidumpWritable&) = delete; + MinidumpWritable& operator=(const MinidumpWritable&) = delete; + virtual ~MinidumpWritable(); //! \brief Writes an object and all of its children to a minidump file. @@ -270,8 +272,6 @@ class MinidumpWritable { size_t leading_pad_bytes_; State state_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpWritable); }; } // namespace internal diff --git a/minidump/minidump_writable_test.cc b/minidump/minidump_writable_test.cc index 74b51a83..ef34e542 100644 --- a/minidump/minidump_writable_test.cc +++ b/minidump/minidump_writable_test.cc @@ -17,7 +17,6 @@ #include #include -#include "base/macros.h" #include "gtest/gtest.h" #include "util/file/string_file.h" @@ -37,6 +36,9 @@ class BaseTestMinidumpWritable : public crashpad::internal::MinidumpWritable { has_phase_(false), verified_(false) {} + BaseTestMinidumpWritable(const BaseTestMinidumpWritable&) = delete; + BaseTestMinidumpWritable& operator=(const BaseTestMinidumpWritable&) = delete; + ~BaseTestMinidumpWritable() { EXPECT_TRUE(verified_); } void SetAlignment(size_t alignment) { @@ -113,14 +115,16 @@ class BaseTestMinidumpWritable : public crashpad::internal::MinidumpWritable { bool has_alignment_; bool has_phase_; bool verified_; - - DISALLOW_COPY_AND_ASSIGN(BaseTestMinidumpWritable); }; class TestStringMinidumpWritable final : public BaseTestMinidumpWritable { public: TestStringMinidumpWritable() : BaseTestMinidumpWritable(), data_() {} + TestStringMinidumpWritable(const TestStringMinidumpWritable&) = delete; + TestStringMinidumpWritable& operator=(const TestStringMinidumpWritable&) = + delete; + ~TestStringMinidumpWritable() {} void SetData(const std::string& string) { data_ = string; } @@ -140,8 +144,6 @@ class TestStringMinidumpWritable final : public BaseTestMinidumpWritable { private: std::string data_; - - DISALLOW_COPY_AND_ASSIGN(TestStringMinidumpWritable); }; TEST(MinidumpWritable, MinidumpWritable) { @@ -487,6 +489,9 @@ class TestRVAMinidumpWritable final : public BaseTestMinidumpWritable { public: TestRVAMinidumpWritable() : BaseTestMinidumpWritable(), rva_() {} + TestRVAMinidumpWritable(const TestRVAMinidumpWritable&) = delete; + TestRVAMinidumpWritable& operator=(const TestRVAMinidumpWritable&) = delete; + ~TestRVAMinidumpWritable() {} void SetRVA(MinidumpWritable* other) { other->RegisterRVA(&rva_); } @@ -505,8 +510,6 @@ class TestRVAMinidumpWritable final : public BaseTestMinidumpWritable { private: RVA rva_; - - DISALLOW_COPY_AND_ASSIGN(TestRVAMinidumpWritable); }; RVA RVAAtIndex(const std::string& string, size_t index) { @@ -620,6 +623,11 @@ class TestLocationDescriptorMinidumpWritable final TestLocationDescriptorMinidumpWritable() : BaseTestMinidumpWritable(), location_descriptor_(), string_() {} + TestLocationDescriptorMinidumpWritable( + const TestLocationDescriptorMinidumpWritable&) = delete; + TestLocationDescriptorMinidumpWritable& operator=( + const TestLocationDescriptorMinidumpWritable&) = delete; + ~TestLocationDescriptorMinidumpWritable() {} void SetLocationDescriptor(MinidumpWritable* other) { @@ -652,8 +660,6 @@ class TestLocationDescriptorMinidumpWritable final private: MINIDUMP_LOCATION_DESCRIPTOR location_descriptor_; std::string string_; - - DISALLOW_COPY_AND_ASSIGN(TestLocationDescriptorMinidumpWritable); }; struct LocationDescriptorAndData { diff --git a/minidump/minidump_writer_util.h b/minidump/minidump_writer_util.h index 16a4e5b2..6bb7a5c6 100644 --- a/minidump/minidump_writer_util.h +++ b/minidump/minidump_writer_util.h @@ -21,7 +21,6 @@ #include -#include "base/macros.h" namespace crashpad { namespace internal { @@ -30,6 +29,10 @@ namespace internal { //! of classes. class MinidumpWriterUtil final { public: + MinidumpWriterUtil() = delete; + MinidumpWriterUtil(const MinidumpWriterUtil&) = delete; + MinidumpWriterUtil& operator=(const MinidumpWriterUtil&) = delete; + //! \brief Assigns a `time_t` value, logging a warning if the result overflows //! the destination buffer and will be truncated. //! @@ -78,9 +81,6 @@ class MinidumpWriterUtil final { static void AssignUTF8ToUTF16(char16_t* destination, size_t destination_size, const std::string& source); - - private: - DISALLOW_IMPLICIT_CONSTRUCTORS(MinidumpWriterUtil); }; } // namespace internal diff --git a/minidump/test/minidump_memory_writer_test_util.h b/minidump/test/minidump_memory_writer_test_util.h index 90c3b863..83b31384 100644 --- a/minidump/test/minidump_memory_writer_test_util.h +++ b/minidump/test/minidump_memory_writer_test_util.h @@ -24,7 +24,6 @@ #include -#include "base/macros.h" #include "snapshot/test/test_memory_snapshot.h" #include "util/file/file_writer.h" @@ -38,14 +37,16 @@ namespace test { class TestMinidumpMemoryWriter final : public SnapshotMinidumpMemoryWriter { public: TestMinidumpMemoryWriter(uint64_t base_address, size_t size, uint8_t value); + + TestMinidumpMemoryWriter(const TestMinidumpMemoryWriter&) = delete; + TestMinidumpMemoryWriter& operator=(const TestMinidumpMemoryWriter&) = delete; + ~TestMinidumpMemoryWriter(); void SetShouldFailRead(bool should_fail); private: TestMemorySnapshot test_snapshot_; - - DISALLOW_COPY_AND_ASSIGN(TestMinidumpMemoryWriter); }; //! \brief Verifies, via Google Test assertions, that a diff --git a/minidump/test/minidump_user_extension_stream_util.h b/minidump/test/minidump_user_extension_stream_util.h index 3a31b948..2dc60f4a 100644 --- a/minidump/test/minidump_user_extension_stream_util.h +++ b/minidump/test/minidump_user_extension_stream_util.h @@ -38,13 +38,16 @@ class BufferExtensionStreamDataSource final const void* data, size_t data_size); + BufferExtensionStreamDataSource(const BufferExtensionStreamDataSource&) = + delete; + BufferExtensionStreamDataSource& operator=( + const BufferExtensionStreamDataSource&) = delete; + size_t StreamDataSize() override; bool ReadStreamData(Delegate* delegate) override; private: std::vector data_; - - DISALLOW_COPY_AND_ASSIGN(BufferExtensionStreamDataSource); }; } // namespace test diff --git a/minidump/test/minidump_writable_test_util.h b/minidump/test/minidump_writable_test_util.h index 84c10739..9ebb9d02 100644 --- a/minidump/test/minidump_writable_test_util.h +++ b/minidump/test/minidump_writable_test_util.h @@ -22,7 +22,6 @@ #include -#include "base/macros.h" #include "gtest/gtest.h" #include "minidump/minidump_extensions.h" #include "minidump/minidump_writable.h" @@ -277,6 +276,10 @@ class TestUInt32MinidumpWritable final : public internal::MinidumpWritable { //! \brief Constructs the object to write a `uint32_t` with value \a value. explicit TestUInt32MinidumpWritable(uint32_t value); + TestUInt32MinidumpWritable(const TestUInt32MinidumpWritable&) = delete; + TestUInt32MinidumpWritable& operator=(const TestUInt32MinidumpWritable&) = + delete; + ~TestUInt32MinidumpWritable() override; protected: @@ -286,8 +289,6 @@ class TestUInt32MinidumpWritable final : public internal::MinidumpWritable { private: uint32_t value_; - - DISALLOW_COPY_AND_ASSIGN(TestUInt32MinidumpWritable); }; } // namespace test diff --git a/snapshot/capture_memory.h b/snapshot/capture_memory.h index a134824c..c4ca1f55 100644 --- a/snapshot/capture_memory.h +++ b/snapshot/capture_memory.h @@ -19,7 +19,6 @@ #include -#include "base/macros.h" #include "snapshot/cpu_context.h" #include "util/numeric/checked_range.h" @@ -65,6 +64,10 @@ class CaptureMemory { const CheckedRange& range) = 0; }; + CaptureMemory() = delete; + CaptureMemory(const CaptureMemory&) = delete; + CaptureMemory& operator=(const CaptureMemory&) = delete; + //! \brief For all registers that appear to be pointer-like in \a context, //! captures a small amount of memory near their pointed to location. //! @@ -88,9 +91,6 @@ class CaptureMemory { //! process and adding new ranges. static void PointedToByMemoryRange(const MemorySnapshot& memory, Delegate* delegate); - - private: - DISALLOW_IMPLICIT_CONSTRUCTORS(CaptureMemory); }; } // namespace internal diff --git a/snapshot/crashpad_info_client_options_test.cc b/snapshot/crashpad_info_client_options_test.cc index a0d22c19..f5baa5bc 100644 --- a/snapshot/crashpad_info_client_options_test.cc +++ b/snapshot/crashpad_info_client_options_test.cc @@ -16,7 +16,6 @@ #include "base/auto_reset.h" #include "base/files/file_path.h" -#include "base/macros.h" #include "base/strings/utf_string_conversions.h" #include "build/build_config.h" #include "client/crashpad_info.h" @@ -63,6 +62,11 @@ class ScopedUnsetCrashpadInfoOptions { : crashpad_info_(crashpad_info) { } + ScopedUnsetCrashpadInfoOptions(const ScopedUnsetCrashpadInfoOptions&) = + delete; + ScopedUnsetCrashpadInfoOptions& operator=( + const ScopedUnsetCrashpadInfoOptions&) = delete; + ~ScopedUnsetCrashpadInfoOptions() { crashpad_info_->set_crashpad_handler_behavior(TriState::kUnset); crashpad_info_->set_system_crash_reporter_forwarding(TriState::kUnset); @@ -72,8 +76,6 @@ class ScopedUnsetCrashpadInfoOptions { private: CrashpadInfo* crashpad_info_; - - DISALLOW_COPY_AND_ASSIGN(ScopedUnsetCrashpadInfoOptions); }; CrashpadInfoClientOptions SelfProcessSnapshotAndGetCrashpadOptions() { diff --git a/snapshot/crashpad_types/crashpad_info_reader.h b/snapshot/crashpad_types/crashpad_info_reader.h index 5f2352ef..9494522f 100644 --- a/snapshot/crashpad_types/crashpad_info_reader.h +++ b/snapshot/crashpad_types/crashpad_info_reader.h @@ -19,7 +19,6 @@ #include -#include "base/macros.h" #include "util/misc/address_types.h" #include "util/misc/initialization_state_dcheck.h" #include "util/misc/tri_state.h" @@ -32,6 +31,10 @@ namespace crashpad { class CrashpadInfoReader { public: CrashpadInfoReader(); + + CrashpadInfoReader(const CrashpadInfoReader&) = delete; + CrashpadInfoReader& operator=(const CrashpadInfoReader&) = delete; + ~CrashpadInfoReader(); //! \brief Initializes this object. @@ -66,8 +69,6 @@ class CrashpadInfoReader { std::unique_ptr container_; bool is_64_bit_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(CrashpadInfoReader); }; } // namespace crashpad diff --git a/snapshot/crashpad_types/crashpad_info_reader_test.cc b/snapshot/crashpad_types/crashpad_info_reader_test.cc index 556ead1b..3a1806a3 100644 --- a/snapshot/crashpad_types/crashpad_info_reader_test.cc +++ b/snapshot/crashpad_types/crashpad_info_reader_test.cc @@ -49,6 +49,9 @@ class ScopedUnsetCrashpadInfo { explicit ScopedUnsetCrashpadInfo(CrashpadInfo* crashpad_info) : crashpad_info_(crashpad_info) {} + ScopedUnsetCrashpadInfo(const ScopedUnsetCrashpadInfo&) = delete; + ScopedUnsetCrashpadInfo& operator=(const ScopedUnsetCrashpadInfo&) = delete; + ~ScopedUnsetCrashpadInfo() { crashpad_info_->set_crashpad_handler_behavior(TriState::kUnset); crashpad_info_->set_system_crash_reporter_forwarding(TriState::kUnset); @@ -61,8 +64,6 @@ class ScopedUnsetCrashpadInfo { private: CrashpadInfo* crashpad_info_; - - DISALLOW_COPY_AND_ASSIGN(ScopedUnsetCrashpadInfo); }; class CrashpadInfoTestDataSetup { @@ -80,6 +81,10 @@ class CrashpadInfoTestDataSetup { kGatherIndirectlyReferencedMemory, kIndirectlyReferencedMemoryCap); } + CrashpadInfoTestDataSetup(const CrashpadInfoTestDataSetup&) = delete; + CrashpadInfoTestDataSetup& operator=(const CrashpadInfoTestDataSetup&) = + delete; + void GetAddresses(VMAddress* info_address, VMAddress* extra_memory_address, VMAddress* simple_annotations_address, @@ -96,8 +101,6 @@ class CrashpadInfoTestDataSetup { SimpleAddressRangeBag extra_memory_; SimpleStringDictionary simple_annotations_; AnnotationList annotation_list_; - - DISALLOW_COPY_AND_ASSIGN(CrashpadInfoTestDataSetup); }; void ExpectCrashpadInfo(ProcessType process, @@ -184,6 +187,9 @@ class ReadFromChildTest : public MultiprocessExec { SetChildTestMainFunction("ReadFromChildTestMain"); } + ReadFromChildTest(const ReadFromChildTest&) = delete; + ReadFromChildTest& operator=(const ReadFromChildTest&) = delete; + ~ReadFromChildTest() = default; private: @@ -215,8 +221,6 @@ class ReadFromChildTest : public MultiprocessExec { simple_annotations_address, annotations_list_address); } - - DISALLOW_COPY_AND_ASSIGN(ReadFromChildTest); }; TEST(CrashpadInfoReader, ReadFromChild) { diff --git a/snapshot/crashpad_types/image_annotation_reader.h b/snapshot/crashpad_types/image_annotation_reader.h index e425bef6..f7bb5125 100644 --- a/snapshot/crashpad_types/image_annotation_reader.h +++ b/snapshot/crashpad_types/image_annotation_reader.h @@ -19,7 +19,6 @@ #include #include -#include "base/macros.h" #include "snapshot/annotation_snapshot.h" #include "util/misc/address_types.h" #include "util/process/process_memory_range.h" @@ -37,6 +36,9 @@ class ImageAnnotationReader { //! \param[in] memory A memory reader for the remote process. explicit ImageAnnotationReader(const ProcessMemoryRange* memory); + ImageAnnotationReader(const ImageAnnotationReader&) = delete; + ImageAnnotationReader& operator=(const ImageAnnotationReader&) = delete; + ~ImageAnnotationReader(); //! \brief Reads annotations that are organized as key-value pairs, where all @@ -67,8 +69,6 @@ class ImageAnnotationReader { std::vector* annotations) const; const ProcessMemoryRange* memory_; // weak - - DISALLOW_COPY_AND_ASSIGN(ImageAnnotationReader); }; } // namespace crashpad diff --git a/snapshot/crashpad_types/image_annotation_reader_test.cc b/snapshot/crashpad_types/image_annotation_reader_test.cc index 9d9970e6..b5289e7a 100644 --- a/snapshot/crashpad_types/image_annotation_reader_test.cc +++ b/snapshot/crashpad_types/image_annotation_reader_test.cc @@ -163,6 +163,9 @@ class ReadFromChildTest : public MultiprocessExec { SetChildTestMainFunction("ReadAnnotationsFromChildTestMain"); } + ReadFromChildTest(const ReadFromChildTest&) = delete; + ReadFromChildTest& operator=(const ReadFromChildTest&) = delete; + ~ReadFromChildTest() = default; private: @@ -182,8 +185,6 @@ class ReadFromChildTest : public MultiprocessExec { ExpectAnnotations( ChildProcess(), am_64_bit, simple_map_address, annotations_address); } - - DISALLOW_COPY_AND_ASSIGN(ReadFromChildTest); }; TEST(ImageAnnotationReader, ReadFromChild) { diff --git a/snapshot/elf/elf_dynamic_array_reader.h b/snapshot/elf/elf_dynamic_array_reader.h index e80a8cbc..f5cddf6f 100644 --- a/snapshot/elf/elf_dynamic_array_reader.h +++ b/snapshot/elf/elf_dynamic_array_reader.h @@ -20,7 +20,6 @@ #include #include "base/logging.h" -#include "base/macros.h" #include "util/misc/address_types.h" #include "util/misc/reinterpret_bytes.h" #include "util/process/process_memory_range.h" @@ -31,6 +30,10 @@ namespace crashpad { class ElfDynamicArrayReader { public: ElfDynamicArrayReader(); + + ElfDynamicArrayReader(const ElfDynamicArrayReader&) = delete; + ElfDynamicArrayReader& operator=(const ElfDynamicArrayReader&) = delete; + ~ElfDynamicArrayReader(); //! \brief Initializes the reader. @@ -66,8 +69,6 @@ class ElfDynamicArrayReader { private: std::map values_; - - DISALLOW_COPY_AND_ASSIGN(ElfDynamicArrayReader); }; } // namespace crashpad diff --git a/snapshot/elf/elf_image_reader.cc b/snapshot/elf/elf_image_reader.cc index 1f361ac7..5ea14c0f 100644 --- a/snapshot/elf/elf_image_reader.cc +++ b/snapshot/elf/elf_image_reader.cc @@ -57,6 +57,12 @@ class ElfImageReader::ProgramHeaderTableSpecific : public ElfImageReader::ProgramHeaderTable { public: ProgramHeaderTableSpecific() {} + + ProgramHeaderTableSpecific( + const ProgramHeaderTableSpecific&) = delete; + ProgramHeaderTableSpecific& operator=( + const ProgramHeaderTableSpecific&) = delete; + ~ProgramHeaderTableSpecific() {} bool Initialize(const ProcessMemoryRange& memory, @@ -183,8 +189,6 @@ class ElfImageReader::ProgramHeaderTableSpecific private: std::vector table_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ProgramHeaderTableSpecific); }; ElfImageReader::NoteReader::~NoteReader() = default; diff --git a/snapshot/elf/elf_image_reader.h b/snapshot/elf/elf_image_reader.h index ab1799f3..1fd399fc 100644 --- a/snapshot/elf/elf_image_reader.h +++ b/snapshot/elf/elf_image_reader.h @@ -22,7 +22,6 @@ #include #include -#include "base/macros.h" #include "snapshot/elf/elf_dynamic_array_reader.h" #include "snapshot/elf/elf_symbol_table_reader.h" #include "util/misc/address_types.h" @@ -46,6 +45,9 @@ class ElfImageReader { //! ElfImageReader::Notes() or ElfImageReader::NotesWithNameAndType(). class NoteReader { public: + NoteReader(const NoteReader&) = delete; + NoteReader& operator=(const NoteReader&) = delete; + ~NoteReader(); //! \brief The return value for NextNote(). @@ -111,11 +113,13 @@ class ElfImageReader { bool use_filter_; bool is_valid_; bool retry_; - - DISALLOW_COPY_AND_ASSIGN(NoteReader); }; ElfImageReader(); + + ElfImageReader(const ElfImageReader&) = delete; + ElfImageReader& operator=(const ElfImageReader&) = delete; + ~ElfImageReader(); //! \brief Initializes the reader. @@ -285,8 +289,6 @@ class ElfImageReader { InitializationStateDcheck initialized_; InitializationState dynamic_array_initialized_; InitializationState symbol_table_initialized_; - - DISALLOW_COPY_AND_ASSIGN(ElfImageReader); }; } // namespace crashpad diff --git a/snapshot/elf/elf_symbol_table_reader.h b/snapshot/elf/elf_symbol_table_reader.h index 15930372..89f99e9a 100644 --- a/snapshot/elf/elf_symbol_table_reader.h +++ b/snapshot/elf/elf_symbol_table_reader.h @@ -19,7 +19,6 @@ #include -#include "base/macros.h" #include "util/misc/address_types.h" #include "util/process/process_memory_range.h" @@ -63,6 +62,10 @@ class ElfSymbolTableReader { ElfImageReader* elf_reader, VMAddress address, VMSize num_entries); + + ElfSymbolTableReader(const ElfSymbolTableReader&) = delete; + ElfSymbolTableReader& operator=(const ElfSymbolTableReader&) = delete; + ~ElfSymbolTableReader(); //! \brief Lookup information about a symbol. @@ -80,8 +83,6 @@ class ElfSymbolTableReader { ElfImageReader* const elf_reader_; // weak const VMAddress base_address_; const VMSize num_entries_; - - DISALLOW_COPY_AND_ASSIGN(ElfSymbolTableReader); }; } // namespace crashpad diff --git a/snapshot/elf/module_snapshot_elf.h b/snapshot/elf/module_snapshot_elf.h index 67ecdf7e..86741b3e 100644 --- a/snapshot/elf/module_snapshot_elf.h +++ b/snapshot/elf/module_snapshot_elf.h @@ -22,7 +22,6 @@ #include #include -#include "base/macros.h" #include "client/crashpad_info.h" #include "snapshot/crashpad_info_client_options.h" #include "snapshot/crashpad_types/crashpad_info_reader.h" @@ -50,6 +49,10 @@ class ModuleSnapshotElf final : public ModuleSnapshot { ModuleSnapshot::ModuleType type, ProcessMemoryRange* process_memory_range, const ProcessMemory* process_memory); + + ModuleSnapshotElf(const ModuleSnapshotElf&) = delete; + ModuleSnapshotElf& operator=(const ModuleSnapshotElf&) = delete; + ~ModuleSnapshotElf() override; //! \brief Initializes the object. @@ -98,8 +101,6 @@ class ModuleSnapshotElf final : public ModuleSnapshot { InitializationStateDcheck initialized_; // Too const-y: https://crashpad.chromium.org/bug/9. mutable std::vector> streams_; - - DISALLOW_COPY_AND_ASSIGN(ModuleSnapshotElf); }; } // namespace internal diff --git a/snapshot/fuchsia/exception_snapshot_fuchsia.h b/snapshot/fuchsia/exception_snapshot_fuchsia.h index 31269446..1b0a4e23 100644 --- a/snapshot/fuchsia/exception_snapshot_fuchsia.h +++ b/snapshot/fuchsia/exception_snapshot_fuchsia.h @@ -35,6 +35,10 @@ namespace internal { class ExceptionSnapshotFuchsia final : public ExceptionSnapshot { public: ExceptionSnapshotFuchsia(); + + ExceptionSnapshotFuchsia(const ExceptionSnapshotFuchsia&) = delete; + ExceptionSnapshotFuchsia& operator=(const ExceptionSnapshotFuchsia&) = delete; + ~ExceptionSnapshotFuchsia() override; //! \brief Initializes the object. @@ -73,8 +77,6 @@ class ExceptionSnapshotFuchsia final : public ExceptionSnapshot { uint32_t exception_; uint32_t exception_info_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ExceptionSnapshotFuchsia); }; } // namespace internal diff --git a/snapshot/fuchsia/memory_map_fuchsia.h b/snapshot/fuchsia/memory_map_fuchsia.h index cdbdb179..1c2736a7 100644 --- a/snapshot/fuchsia/memory_map_fuchsia.h +++ b/snapshot/fuchsia/memory_map_fuchsia.h @@ -28,6 +28,10 @@ namespace crashpad { class MemoryMapFuchsia { public: MemoryMapFuchsia(); + + MemoryMapFuchsia(const MemoryMapFuchsia&) = delete; + MemoryMapFuchsia& operator=(const MemoryMapFuchsia&) = delete; + ~MemoryMapFuchsia(); //! \brief Initializes this object with information about the mapped memory @@ -53,8 +57,6 @@ class MemoryMapFuchsia { private: std::vector map_entries_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(MemoryMapFuchsia); }; } // namespace crashpad diff --git a/snapshot/fuchsia/process_reader_fuchsia.h b/snapshot/fuchsia/process_reader_fuchsia.h index 91c6331c..b57f0b9e 100644 --- a/snapshot/fuchsia/process_reader_fuchsia.h +++ b/snapshot/fuchsia/process_reader_fuchsia.h @@ -21,7 +21,6 @@ #include #include -#include "base/macros.h" #include "build/build_config.h" #include "snapshot/elf/elf_image_reader.h" #include "snapshot/fuchsia/memory_map_fuchsia.h" @@ -88,6 +87,10 @@ class ProcessReaderFuchsia { }; ProcessReaderFuchsia(); + + ProcessReaderFuchsia(const ProcessReaderFuchsia&) = delete; + ProcessReaderFuchsia& operator=(const ProcessReaderFuchsia&) = delete; + ~ProcessReaderFuchsia(); //! \brief Initializes this object. This method must be called before any @@ -138,8 +141,6 @@ class ProcessReaderFuchsia { bool initialized_threads_ = false; bool initialized_memory_map_ = false; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ProcessReaderFuchsia); }; } // namespace crashpad diff --git a/snapshot/fuchsia/process_reader_fuchsia_test.cc b/snapshot/fuchsia/process_reader_fuchsia_test.cc index 4fcf6a43..f5a8aea7 100644 --- a/snapshot/fuchsia/process_reader_fuchsia_test.cc +++ b/snapshot/fuchsia/process_reader_fuchsia_test.cc @@ -92,6 +92,10 @@ class BasicChildTest : public MultiprocessExec { BasicChildTest() : MultiprocessExec() { SetChildTestMainFunction("ProcessReaderBasicChildTestMain"); } + + BasicChildTest(const BasicChildTest&) = delete; + BasicChildTest& operator=(const BasicChildTest&) = delete; + ~BasicChildTest() {} private: @@ -106,8 +110,6 @@ class BasicChildTest : public MultiprocessExec { ASSERT_TRUE(process_reader.Memory()->ReadCString(addr, &read_string)); EXPECT_EQ(read_string, kTestMemory); } - - DISALLOW_COPY_AND_ASSIGN(BasicChildTest); }; TEST(ProcessReaderFuchsia, ChildBasic) { @@ -156,6 +158,10 @@ class ThreadsChildTest : public MultiprocessExec { ThreadsChildTest() : MultiprocessExec() { SetChildTestMainFunction("ProcessReaderChildThreadsTestMain"); } + + ThreadsChildTest(const ThreadsChildTest&) = delete; + ThreadsChildTest& operator=(const ThreadsChildTest&) = delete; + ~ThreadsChildTest() {} private: @@ -178,8 +184,6 @@ class ThreadsChildTest : public MultiprocessExec { EXPECT_LE(threads[i].stack_regions[0].size(), i * 4096u); } } - - DISALLOW_COPY_AND_ASSIGN(ThreadsChildTest); }; // TODO(scottmg): US-553. ScopedTaskSuspend fails sometimes, with a 50ms diff --git a/snapshot/fuchsia/process_snapshot_fuchsia.h b/snapshot/fuchsia/process_snapshot_fuchsia.h index 6af2ebeb..47efaa34 100644 --- a/snapshot/fuchsia/process_snapshot_fuchsia.h +++ b/snapshot/fuchsia/process_snapshot_fuchsia.h @@ -23,7 +23,6 @@ #include #include -#include "base/macros.h" #include "snapshot/crashpad_info_client_options.h" #include "snapshot/elf/elf_image_reader.h" #include "snapshot/elf/module_snapshot_elf.h" @@ -45,6 +44,10 @@ namespace crashpad { class ProcessSnapshotFuchsia : public ProcessSnapshot { public: ProcessSnapshotFuchsia(); + + ProcessSnapshotFuchsia(const ProcessSnapshotFuchsia&) = delete; + ProcessSnapshotFuchsia& operator=(const ProcessSnapshotFuchsia&) = delete; + ~ProcessSnapshotFuchsia() override; //! \brief Initializes the object. @@ -145,8 +148,6 @@ class ProcessSnapshotFuchsia : public ProcessSnapshot { UUID client_id_; timeval snapshot_time_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ProcessSnapshotFuchsia); }; } // namespace crashpad diff --git a/snapshot/fuchsia/process_snapshot_fuchsia_test.cc b/snapshot/fuchsia/process_snapshot_fuchsia_test.cc index 04730117..496d97a8 100644 --- a/snapshot/fuchsia/process_snapshot_fuchsia_test.cc +++ b/snapshot/fuchsia/process_snapshot_fuchsia_test.cc @@ -103,6 +103,10 @@ class AddressSpaceTest : public MultiprocessExec { AddressSpaceTest() : MultiprocessExec() { SetChildTestMainFunction("AddressSpaceChildTestMain"); } + + AddressSpaceTest(const AddressSpaceTest&) = delete; + AddressSpaceTest& operator=(const AddressSpaceTest&) = delete; + ~AddressSpaceTest() {} private: @@ -131,8 +135,6 @@ class AddressSpaceTest : public MultiprocessExec { t.minidump_perm); } } - - DISALLOW_COPY_AND_ASSIGN(AddressSpaceTest); }; TEST(ProcessSnapshotFuchsiaTest, AddressSpaceMapping) { @@ -171,6 +173,10 @@ class InvalidStackPointerTest : public MultiprocessExec { SetExpectedChildTermination(kTerminationNormal, ZX_TASK_RETCODE_SYSCALL_KILL); } + + InvalidStackPointerTest(const InvalidStackPointerTest&) = delete; + InvalidStackPointerTest& operator=(const InvalidStackPointerTest&) = delete; + ~InvalidStackPointerTest() {} private: @@ -215,8 +221,6 @@ class InvalidStackPointerTest : public MultiprocessExec { // As we've corrupted the child, don't let it run again. ASSERT_EQ(ChildProcess()->kill(), ZX_OK); } - - DISALLOW_COPY_AND_ASSIGN(InvalidStackPointerTest); }; // This is a test for a specific failure detailed in diff --git a/snapshot/fuchsia/system_snapshot_fuchsia.h b/snapshot/fuchsia/system_snapshot_fuchsia.h index c7cd35dc..aadffac9 100644 --- a/snapshot/fuchsia/system_snapshot_fuchsia.h +++ b/snapshot/fuchsia/system_snapshot_fuchsia.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" #include "build/build_config.h" #include "snapshot/system_snapshot.h" #include "util/misc/initialization_state_dcheck.h" @@ -33,6 +32,10 @@ namespace internal { class SystemSnapshotFuchsia final : public SystemSnapshot { public: SystemSnapshotFuchsia(); + + SystemSnapshotFuchsia(const SystemSnapshotFuchsia&) = delete; + SystemSnapshotFuchsia& operator=(const SystemSnapshotFuchsia&) = delete; + ~SystemSnapshotFuchsia() override; //! \brief Initializes the object. @@ -77,8 +80,6 @@ class SystemSnapshotFuchsia final : public SystemSnapshot { CpuidReader cpuid_; #endif // ARCH_CPU_X86_FAMILY InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(SystemSnapshotFuchsia); }; } // namespace internal diff --git a/snapshot/fuchsia/thread_snapshot_fuchsia.h b/snapshot/fuchsia/thread_snapshot_fuchsia.h index 45d4f117..b91a514d 100644 --- a/snapshot/fuchsia/thread_snapshot_fuchsia.h +++ b/snapshot/fuchsia/thread_snapshot_fuchsia.h @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" #include "build/build_config.h" #include "snapshot/cpu_context.h" #include "snapshot/fuchsia/process_reader_fuchsia.h" @@ -34,6 +33,10 @@ namespace internal { class ThreadSnapshotFuchsia final : public ThreadSnapshot { public: ThreadSnapshotFuchsia(); + + ThreadSnapshotFuchsia(const ThreadSnapshotFuchsia&) = delete; + ThreadSnapshotFuchsia& operator=(const ThreadSnapshotFuchsia&) = delete; + ~ThreadSnapshotFuchsia() override; //! \brief Initializes the object. @@ -71,8 +74,6 @@ class ThreadSnapshotFuchsia final : public ThreadSnapshot { zx_koid_t thread_id_; zx_vaddr_t thread_specific_data_address_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ThreadSnapshotFuchsia); }; } // namespace internal diff --git a/snapshot/ios/exception_snapshot_ios_intermediate_dump.h b/snapshot/ios/exception_snapshot_ios_intermediate_dump.h index 88d5ea6c..7e22330b 100644 --- a/snapshot/ios/exception_snapshot_ios_intermediate_dump.h +++ b/snapshot/ios/exception_snapshot_ios_intermediate_dump.h @@ -20,7 +20,6 @@ #include -#include "base/macros.h" #include "build/build_config.h" #include "snapshot/cpu_context.h" #include "snapshot/exception_snapshot.h" @@ -37,6 +36,12 @@ namespace internal { class ExceptionSnapshotIOSIntermediateDump final : public ExceptionSnapshot { public: ExceptionSnapshotIOSIntermediateDump(); + + ExceptionSnapshotIOSIntermediateDump( + const ExceptionSnapshotIOSIntermediateDump&) = delete; + ExceptionSnapshotIOSIntermediateDump& operator=( + const ExceptionSnapshotIOSIntermediateDump&) = delete; + ~ExceptionSnapshotIOSIntermediateDump() override; //! \brief Initialize the snapshot as a signal exception. @@ -102,8 +107,6 @@ class ExceptionSnapshotIOSIntermediateDump final : public ExceptionSnapshot { uint32_t exception_; uint32_t exception_info_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ExceptionSnapshotIOSIntermediateDump); }; } // namespace internal diff --git a/snapshot/ios/memory_snapshot_ios_intermediate_dump.h b/snapshot/ios/memory_snapshot_ios_intermediate_dump.h index 895cbd0d..a9320002 100644 --- a/snapshot/ios/memory_snapshot_ios_intermediate_dump.h +++ b/snapshot/ios/memory_snapshot_ios_intermediate_dump.h @@ -15,7 +15,6 @@ #ifndef CRASHPAD_SNAPSHOT_IOS_INTERMEDIATE_DUMP_MEMORY_SNAPSHOT_IOS_INTERMEDIATEDUMP_H_ #define CRASHPAD_SNAPSHOT_IOS_INTERMEDIATE_DUMP_MEMORY_SNAPSHOT_IOS_INTERMEDIATEDUMP_H_ -#include "base/macros.h" #include "snapshot/memory_snapshot.h" #include "util/misc/address_types.h" #include "util/misc/initialization_state_dcheck.h" @@ -27,6 +26,12 @@ namespace internal { class MemorySnapshotIOSIntermediateDump final : public MemorySnapshot { public: MemorySnapshotIOSIntermediateDump() = default; + + MemorySnapshotIOSIntermediateDump(const MemorySnapshotIOSIntermediateDump&) = + delete; + MemorySnapshotIOSIntermediateDump& operator=( + const MemorySnapshotIOSIntermediateDump&) = delete; + ~MemorySnapshotIOSIntermediateDump() = default; //! \brief Initializes the object. @@ -52,8 +57,6 @@ class MemorySnapshotIOSIntermediateDump final : public MemorySnapshot { vm_address_t data_; vm_size_t size_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(MemorySnapshotIOSIntermediateDump); }; } // namespace internal diff --git a/snapshot/ios/module_snapshot_ios_intermediate_dump.h b/snapshot/ios/module_snapshot_ios_intermediate_dump.h index cd85c44f..55b7ace8 100644 --- a/snapshot/ios/module_snapshot_ios_intermediate_dump.h +++ b/snapshot/ios/module_snapshot_ios_intermediate_dump.h @@ -23,7 +23,6 @@ #include #include -#include "base/macros.h" #include "snapshot/crashpad_info_client_options.h" #include "snapshot/module_snapshot.h" #include "util/ios/ios_intermediate_dump_map.h" @@ -37,6 +36,12 @@ namespace internal { class ModuleSnapshotIOSIntermediateDump final : public ModuleSnapshot { public: ModuleSnapshotIOSIntermediateDump(); + + ModuleSnapshotIOSIntermediateDump(const ModuleSnapshotIOSIntermediateDump&) = + delete; + ModuleSnapshotIOSIntermediateDump& operator=( + const ModuleSnapshotIOSIntermediateDump&) = delete; + ~ModuleSnapshotIOSIntermediateDump() override; //! \brief Initialize the snapshot @@ -84,8 +89,6 @@ class ModuleSnapshotIOSIntermediateDump final : public ModuleSnapshot { std::vector annotation_objects_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ModuleSnapshotIOSIntermediateDump); }; } // namespace internal diff --git a/snapshot/ios/process_snapshot_ios_intermediate_dump.h b/snapshot/ios/process_snapshot_ios_intermediate_dump.h index 70a4d7da..61312f07 100644 --- a/snapshot/ios/process_snapshot_ios_intermediate_dump.h +++ b/snapshot/ios/process_snapshot_ios_intermediate_dump.h @@ -39,6 +39,11 @@ class ProcessSnapshotIOSIntermediateDump final : public ProcessSnapshot { public: ProcessSnapshotIOSIntermediateDump() = default; + ProcessSnapshotIOSIntermediateDump( + const ProcessSnapshotIOSIntermediateDump&) = delete; + ProcessSnapshotIOSIntermediateDump& operator=( + const ProcessSnapshotIOSIntermediateDump&) = delete; + //! \brief Initializes the object. //! //! \param[in] dump_path A class containing various system data points. @@ -103,8 +108,6 @@ class ProcessSnapshotIOSIntermediateDump final : public ProcessSnapshot { std::map annotations_simple_map_; timeval snapshot_time_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ProcessSnapshotIOSIntermediateDump); }; } // namespace internal diff --git a/snapshot/ios/system_snapshot_ios_intermediate_dump.h b/snapshot/ios/system_snapshot_ios_intermediate_dump.h index 72eaa64b..9708e7fd 100644 --- a/snapshot/ios/system_snapshot_ios_intermediate_dump.h +++ b/snapshot/ios/system_snapshot_ios_intermediate_dump.h @@ -19,7 +19,6 @@ #include -#include "base/macros.h" #include "snapshot/system_snapshot.h" #include "util/ios/ios_intermediate_dump_map.h" #include "util/ios/ios_system_data_collector.h" @@ -33,6 +32,12 @@ namespace internal { class SystemSnapshotIOSIntermediateDump final : public SystemSnapshot { public: SystemSnapshotIOSIntermediateDump(); + + SystemSnapshotIOSIntermediateDump(const SystemSnapshotIOSIntermediateDump&) = + delete; + SystemSnapshotIOSIntermediateDump& operator=( + const SystemSnapshotIOSIntermediateDump&) = delete; + ~SystemSnapshotIOSIntermediateDump() override; //! \brief Initializes the object. @@ -87,8 +92,6 @@ class SystemSnapshotIOSIntermediateDump final : public SystemSnapshot { std::string standard_name_; std::string daylight_name_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(SystemSnapshotIOSIntermediateDump); }; } // namespace internal diff --git a/snapshot/ios/thread_snapshot_ios_intermediate_dump.h b/snapshot/ios/thread_snapshot_ios_intermediate_dump.h index d986c493..cf9ccec0 100644 --- a/snapshot/ios/thread_snapshot_ios_intermediate_dump.h +++ b/snapshot/ios/thread_snapshot_ios_intermediate_dump.h @@ -15,7 +15,6 @@ #ifndef CRASHPAD_SNAPSHOT_IOS_INTERMEDIATE_DUMP_THREAD_SNAPSHOT_IOS_INTERMEDIATEDUMP_H_ #define CRASHPAD_SNAPSHOT_IOS_INTERMEDIATE_DUMP_THREAD_SNAPSHOT_IOS_INTERMEDIATEDUMP_H_ -#include "base/macros.h" #include "build/build_config.h" #include "snapshot/cpu_context.h" #include "snapshot/ios/memory_snapshot_ios_intermediate_dump.h" @@ -30,6 +29,12 @@ namespace internal { class ThreadSnapshotIOSIntermediateDump final : public ThreadSnapshot { public: ThreadSnapshotIOSIntermediateDump(); + + ThreadSnapshotIOSIntermediateDump(const ThreadSnapshotIOSIntermediateDump&) = + delete; + ThreadSnapshotIOSIntermediateDump& operator=( + const ThreadSnapshotIOSIntermediateDump&) = delete; + ~ThreadSnapshotIOSIntermediateDump() override; //! \brief Initializes the object. @@ -67,8 +72,6 @@ class ThreadSnapshotIOSIntermediateDump final : public ThreadSnapshot { std::vector> extra_memory_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ThreadSnapshotIOSIntermediateDump); }; } // namespace internal diff --git a/snapshot/linux/debug_rendezvous.h b/snapshot/linux/debug_rendezvous.h index 90106c9d..f9205174 100644 --- a/snapshot/linux/debug_rendezvous.h +++ b/snapshot/linux/debug_rendezvous.h @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" #include "util/linux/address_types.h" #include "util/misc/initialization_state_dcheck.h" #include "util/process/process_memory_range.h" @@ -48,6 +47,10 @@ class DebugRendezvous { }; DebugRendezvous(); + + DebugRendezvous(const DebugRendezvous&) = delete; + DebugRendezvous& operator=(const DebugRendezvous&) = delete; + ~DebugRendezvous(); //! \brief Initializes this object by reading an `r_debug` struct from a @@ -79,8 +82,6 @@ class DebugRendezvous { std::vector modules_; LinkEntry executable_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(DebugRendezvous); }; } // namespace crashpad diff --git a/snapshot/linux/debug_rendezvous_test.cc b/snapshot/linux/debug_rendezvous_test.cc index 41956aa5..c77e8626 100644 --- a/snapshot/linux/debug_rendezvous_test.cc +++ b/snapshot/linux/debug_rendezvous_test.cc @@ -239,6 +239,10 @@ TEST(DebugRendezvous, Self) { class ChildTest : public Multiprocess { public: ChildTest() {} + + ChildTest(const ChildTest&) = delete; + ChildTest& operator=(const ChildTest&) = delete; + ~ChildTest() {} private: @@ -250,8 +254,6 @@ class ChildTest : public Multiprocess { } void MultiprocessChild() { CheckedReadFileAtEOF(ReadPipeHandle()); } - - DISALLOW_COPY_AND_ASSIGN(ChildTest); }; TEST(DebugRendezvous, Child) { diff --git a/snapshot/linux/exception_snapshot_linux.h b/snapshot/linux/exception_snapshot_linux.h index ea0cd210..c722ac77 100644 --- a/snapshot/linux/exception_snapshot_linux.h +++ b/snapshot/linux/exception_snapshot_linux.h @@ -20,7 +20,6 @@ #include -#include "base/macros.h" #include "build/build_config.h" #include "snapshot/cpu_context.h" #include "snapshot/exception_snapshot.h" @@ -37,6 +36,10 @@ namespace internal { class ExceptionSnapshotLinux final : public ExceptionSnapshot { public: ExceptionSnapshotLinux(); + + ExceptionSnapshotLinux(const ExceptionSnapshotLinux&) = delete; + ExceptionSnapshotLinux& operator=(const ExceptionSnapshotLinux&) = delete; + ~ExceptionSnapshotLinux() override; //! \brief Initializes the object. @@ -93,8 +96,6 @@ class ExceptionSnapshotLinux final : public ExceptionSnapshot { uint32_t signal_number_; uint32_t signal_code_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ExceptionSnapshotLinux); }; } // namespace internal diff --git a/snapshot/linux/exception_snapshot_linux_test.cc b/snapshot/linux/exception_snapshot_linux_test.cc index 1f72fe80..51d3fd38 100644 --- a/snapshot/linux/exception_snapshot_linux_test.cc +++ b/snapshot/linux/exception_snapshot_linux_test.cc @@ -23,7 +23,6 @@ #include "base/bit_cast.h" #include "base/cxx17_backports.h" -#include "base/macros.h" #include "base/strings/stringprintf.h" #include "gtest/gtest.h" #include "snapshot/cpu_architecture.h" @@ -333,6 +332,9 @@ class ScopedSigactionRestore { public: ScopedSigactionRestore() : old_action_(), signo_(-1), valid_(false) {} + ScopedSigactionRestore(const ScopedSigactionRestore&) = delete; + ScopedSigactionRestore& operator=(const ScopedSigactionRestore&) = delete; + ~ScopedSigactionRestore() { Reset(); } bool Reset() { @@ -361,12 +363,14 @@ class ScopedSigactionRestore { struct sigaction old_action_; int signo_; bool valid_; - - DISALLOW_COPY_AND_ASSIGN(ScopedSigactionRestore); }; class RaiseTest { public: + RaiseTest() = delete; + RaiseTest(const RaiseTest&) = delete; + RaiseTest& operator=(const RaiseTest&) = delete; + static void Run() { test_complete_ = false; @@ -406,8 +410,6 @@ class RaiseTest { static constexpr uint32_t kSigno = SIGUSR1; static bool test_complete_; - - DISALLOW_IMPLICIT_CONSTRUCTORS(RaiseTest); }; bool RaiseTest::test_complete_ = false; @@ -418,6 +420,10 @@ TEST(ExceptionSnapshotLinux, Raise) { class TimerTest { public: TimerTest() : event_(), timer_(-1), test_complete_(false) { test_ = this; } + + TimerTest(const TimerTest&) = delete; + TimerTest& operator=(const TimerTest&) = delete; + ~TimerTest() { test_ = nullptr; } void Run() { @@ -479,8 +485,6 @@ class TimerTest { static constexpr uint32_t kSigno = SIGALRM; static TimerTest* test_; - - DISALLOW_COPY_AND_ASSIGN(TimerTest); }; TimerTest* TimerTest::test_; diff --git a/snapshot/linux/process_reader_linux.h b/snapshot/linux/process_reader_linux.h index 258e102a..0eb1d404 100644 --- a/snapshot/linux/process_reader_linux.h +++ b/snapshot/linux/process_reader_linux.h @@ -22,7 +22,6 @@ #include #include -#include "base/macros.h" #include "snapshot/elf/elf_image_reader.h" #include "snapshot/module_snapshot.h" #include "util/linux/address_types.h" @@ -99,6 +98,10 @@ class ProcessReaderLinux { }; ProcessReaderLinux(); + + ProcessReaderLinux(const ProcessReaderLinux&) = delete; + ProcessReaderLinux& operator=(const ProcessReaderLinux&) = delete; + ~ProcessReaderLinux(); //! \brief Initializes this object. @@ -175,8 +178,6 @@ class ProcessReaderLinux { bool initialized_threads_; bool initialized_modules_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ProcessReaderLinux); }; } // namespace crashpad diff --git a/snapshot/linux/process_reader_linux_test.cc b/snapshot/linux/process_reader_linux_test.cc index 5a0d1378..250f12da 100644 --- a/snapshot/linux/process_reader_linux_test.cc +++ b/snapshot/linux/process_reader_linux_test.cc @@ -103,6 +103,10 @@ constexpr char kTestMemory[] = "Read me from another process"; class BasicChildTest : public Multiprocess { public: BasicChildTest() : Multiprocess() {} + + BasicChildTest(const BasicChildTest&) = delete; + BasicChildTest& operator=(const BasicChildTest&) = delete; + ~BasicChildTest() {} private: @@ -129,8 +133,6 @@ class BasicChildTest : public Multiprocess { } void MultiprocessChild() override { CheckedReadFileAtEOF(ReadPipeHandle()); } - - DISALLOW_COPY_AND_ASSIGN(BasicChildTest); }; TEST(ProcessReaderLinux, ChildBasic) { @@ -151,6 +153,9 @@ class TestThreadPool { TestThreadPool() : threads_() {} + TestThreadPool(const TestThreadPool&) = delete; + TestThreadPool& operator=(const TestThreadPool&) = delete; + ~TestThreadPool() { for (const auto& thread : threads_) { thread->exit_semaphore.Signal(); @@ -252,8 +257,6 @@ class TestThreadPool { } std::vector> threads_; - - DISALLOW_COPY_AND_ASSIGN(TestThreadPool); }; using ThreadMap = std::map; @@ -307,6 +310,10 @@ class ChildThreadTest : public Multiprocess { public: ChildThreadTest(size_t stack_size = 0) : Multiprocess(), stack_size_(stack_size) {} + + ChildThreadTest(const ChildThreadTest&) = delete; + ChildThreadTest& operator=(const ChildThreadTest&) = delete; + ~ChildThreadTest() {} private: @@ -375,8 +382,6 @@ class ChildThreadTest : public Multiprocess { static constexpr size_t kThreadCount = 3; const size_t stack_size_; - - DISALLOW_COPY_AND_ASSIGN(ChildThreadTest); }; TEST(ProcessReaderLinux, ChildWithThreads) { @@ -393,6 +398,10 @@ TEST(ProcessReaderLinux, ChildThreadsWithSmallUserStacks) { class ChildWithSplitStackTest : public Multiprocess { public: ChildWithSplitStackTest() : Multiprocess(), page_size_(getpagesize()) {} + + ChildWithSplitStackTest(const ChildWithSplitStackTest&) = delete; + ChildWithSplitStackTest& operator=(const ChildWithSplitStackTest&) = delete; + ~ChildWithSplitStackTest() {} private: @@ -465,8 +474,6 @@ class ChildWithSplitStackTest : public Multiprocess { } const size_t page_size_; - - DISALLOW_COPY_AND_ASSIGN(ChildWithSplitStackTest); }; // AddressSanitizer with use-after-return detection causes stack variables to @@ -587,6 +594,10 @@ TEST(ProcessReaderLinux, SelfModules) { class ChildModuleTest : public Multiprocess { public: ChildModuleTest() : Multiprocess(), module_soname_("test_module_soname") {} + + ChildModuleTest(const ChildModuleTest&) = delete; + ChildModuleTest& operator=(const ChildModuleTest&) = delete; + ~ChildModuleTest() = default; private: @@ -620,8 +631,6 @@ class ChildModuleTest : public Multiprocess { } const std::string module_soname_; - - DISALLOW_COPY_AND_ASSIGN(ChildModuleTest); }; TEST(ProcessReaderLinux, ChildModules) { diff --git a/snapshot/linux/process_snapshot_linux.h b/snapshot/linux/process_snapshot_linux.h index 06b72aff..62517bbf 100644 --- a/snapshot/linux/process_snapshot_linux.h +++ b/snapshot/linux/process_snapshot_linux.h @@ -23,7 +23,6 @@ #include #include -#include "base/macros.h" #include "snapshot/crashpad_info_client_options.h" #include "snapshot/elf/module_snapshot_elf.h" #include "snapshot/linux/exception_snapshot_linux.h" @@ -49,6 +48,10 @@ namespace crashpad { class ProcessSnapshotLinux final : public ProcessSnapshot { public: ProcessSnapshotLinux(); + + ProcessSnapshotLinux(const ProcessSnapshotLinux&) = delete; + ProcessSnapshotLinux& operator=(const ProcessSnapshotLinux&) = delete; + ~ProcessSnapshotLinux() override; //! \brief Initializes the object. @@ -147,8 +150,6 @@ class ProcessSnapshotLinux final : public ProcessSnapshot { ProcessReaderLinux process_reader_; ProcessMemoryRange memory_range_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ProcessSnapshotLinux); }; } // namespace crashpad diff --git a/snapshot/linux/system_snapshot_linux.h b/snapshot/linux/system_snapshot_linux.h index d22c49a6..e13c9dfb 100644 --- a/snapshot/linux/system_snapshot_linux.h +++ b/snapshot/linux/system_snapshot_linux.h @@ -20,7 +20,6 @@ #include -#include "base/macros.h" #include "build/build_config.h" #include "snapshot/linux/process_reader_linux.h" #include "snapshot/system_snapshot.h" @@ -37,6 +36,10 @@ namespace internal { class SystemSnapshotLinux final : public SystemSnapshot { public: SystemSnapshotLinux(); + + SystemSnapshotLinux(const SystemSnapshotLinux&) = delete; + SystemSnapshotLinux& operator=(const SystemSnapshotLinux&) = delete; + ~SystemSnapshotLinux() override; //! \brief Initializes the object. @@ -103,8 +106,6 @@ class SystemSnapshotLinux final : public SystemSnapshot { uint32_t target_cpu_; uint8_t cpu_count_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(SystemSnapshotLinux); }; } // namespace internal diff --git a/snapshot/linux/thread_snapshot_linux.h b/snapshot/linux/thread_snapshot_linux.h index 44cc6f6d..17a6668d 100644 --- a/snapshot/linux/thread_snapshot_linux.h +++ b/snapshot/linux/thread_snapshot_linux.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" #include "build/build_config.h" #include "snapshot/cpu_context.h" #include "snapshot/linux/process_reader_linux.h" @@ -33,6 +32,10 @@ namespace internal { class ThreadSnapshotLinux final : public ThreadSnapshot { public: ThreadSnapshotLinux(); + + ThreadSnapshotLinux(const ThreadSnapshotLinux&) = delete; + ThreadSnapshotLinux& operator=(const ThreadSnapshotLinux&) = delete; + ~ThreadSnapshotLinux() override; //! \brief Initializes the object. @@ -78,8 +81,6 @@ class ThreadSnapshotLinux final : public ThreadSnapshot { pid_t thread_id_; int priority_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ThreadSnapshotLinux); }; } // namespace internal diff --git a/snapshot/mac/exception_snapshot_mac.h b/snapshot/mac/exception_snapshot_mac.h index 7c0b87cf..ea7150a9 100644 --- a/snapshot/mac/exception_snapshot_mac.h +++ b/snapshot/mac/exception_snapshot_mac.h @@ -20,7 +20,6 @@ #include -#include "base/macros.h" #include "build/build_config.h" #include "snapshot/cpu_context.h" #include "snapshot/exception_snapshot.h" @@ -38,6 +37,10 @@ namespace internal { class ExceptionSnapshotMac final : public ExceptionSnapshot { public: ExceptionSnapshotMac(); + + ExceptionSnapshotMac(const ExceptionSnapshotMac&) = delete; + ExceptionSnapshotMac& operator=(const ExceptionSnapshotMac&) = delete; + ~ExceptionSnapshotMac() override; //! \brief Initializes the object. @@ -96,8 +99,6 @@ class ExceptionSnapshotMac final : public ExceptionSnapshot { exception_type_t exception_; uint32_t exception_code_0_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ExceptionSnapshotMac); }; } // namespace internal diff --git a/snapshot/mac/mach_o_image_annotations_reader.h b/snapshot/mac/mach_o_image_annotations_reader.h index a56b073b..7a1a0a1c 100644 --- a/snapshot/mac/mach_o_image_annotations_reader.h +++ b/snapshot/mac/mach_o_image_annotations_reader.h @@ -19,7 +19,6 @@ #include #include -#include "base/macros.h" #include "snapshot/annotation_snapshot.h" #include "snapshot/mac/process_types.h" @@ -58,6 +57,10 @@ class MachOImageAnnotationsReader { const MachOImageReader* image_reader, const std::string& name); + MachOImageAnnotationsReader(const MachOImageAnnotationsReader&) = delete; + MachOImageAnnotationsReader& operator=(const MachOImageAnnotationsReader&) = + delete; + ~MachOImageAnnotationsReader() {} //! \brief Returns the module’s annotations that are organized as a vector of @@ -93,8 +96,6 @@ class MachOImageAnnotationsReader { std::string name_; ProcessReaderMac* process_reader_; // weak const MachOImageReader* image_reader_; // weak - - DISALLOW_COPY_AND_ASSIGN(MachOImageAnnotationsReader); }; } // namespace crashpad diff --git a/snapshot/mac/mach_o_image_annotations_reader_test.cc b/snapshot/mac/mach_o_image_annotations_reader_test.cc index cddc3994..74a21be6 100644 --- a/snapshot/mac/mach_o_image_annotations_reader_test.cc +++ b/snapshot/mac/mach_o_image_annotations_reader_test.cc @@ -27,7 +27,6 @@ #include #include "base/files/file_path.h" -#include "base/macros.h" #include "client/annotation.h" #include "client/annotation_list.h" #include "client/crashpad_info.h" @@ -128,6 +127,11 @@ class TestMachOImageAnnotationsReader final } } + TestMachOImageAnnotationsReader(const TestMachOImageAnnotationsReader&) = + delete; + TestMachOImageAnnotationsReader& operator=( + const TestMachOImageAnnotationsReader&) = delete; + ~TestMachOImageAnnotationsReader() {} // UniversalMachExcServer::Interface: @@ -442,8 +446,6 @@ class TestMachOImageAnnotationsReader final } TestType test_type_; - - DISALLOW_COPY_AND_ASSIGN(TestMachOImageAnnotationsReader); }; TEST(MachOImageAnnotationsReader, DontCrash) { diff --git a/snapshot/mac/mach_o_image_reader.h b/snapshot/mac/mach_o_image_reader.h index aded956c..0c60bcad 100644 --- a/snapshot/mac/mach_o_image_reader.h +++ b/snapshot/mac/mach_o_image_reader.h @@ -24,7 +24,6 @@ #include #include -#include "base/macros.h" #include "snapshot/mac/process_types.h" #include "util/misc/initialization_state_dcheck.h" #include "util/misc/uuid.h" @@ -45,6 +44,10 @@ class ProcessReaderMac; class MachOImageReader { public: MachOImageReader(); + + MachOImageReader(const MachOImageReader&) = delete; + MachOImageReader& operator=(const MachOImageReader&) = delete; + ~MachOImageReader(); //! \brief Reads the Mach-O image file’s load commands from another process. @@ -347,8 +350,6 @@ class MachOImageReader { // set. symbol_table_initialized_ will be valid without symbol_table_ being // set in modules that have no symbol table. mutable InitializationState symbol_table_initialized_; - - DISALLOW_COPY_AND_ASSIGN(MachOImageReader); }; } // namespace crashpad diff --git a/snapshot/mac/mach_o_image_segment_reader.h b/snapshot/mac/mach_o_image_segment_reader.h index 708cc37d..d639a5d3 100644 --- a/snapshot/mac/mach_o_image_segment_reader.h +++ b/snapshot/mac/mach_o_image_segment_reader.h @@ -23,7 +23,6 @@ #include #include -#include "base/macros.h" #include "snapshot/mac/process_types.h" #include "util/misc/initialization_state_dcheck.h" @@ -78,6 +77,10 @@ bool IsMalformedCLKernelsModule(uint32_t mach_o_file_type, class MachOImageSegmentReader { public: MachOImageSegmentReader(); + + MachOImageSegmentReader(const MachOImageSegmentReader&) = delete; + MachOImageSegmentReader& operator=(const MachOImageSegmentReader&) = delete; + ~MachOImageSegmentReader(); //! \brief Reads the segment load command from another process. @@ -291,8 +294,6 @@ class MachOImageSegmentReader { InitializationStateDcheck initialized_; InitializationStateDcheck initialized_slide_; - - DISALLOW_COPY_AND_ASSIGN(MachOImageSegmentReader); }; } // namespace crashpad diff --git a/snapshot/mac/mach_o_image_symbol_table_reader.cc b/snapshot/mac/mach_o_image_symbol_table_reader.cc index bf72ac9c..ef5a598f 100644 --- a/snapshot/mac/mach_o_image_symbol_table_reader.cc +++ b/snapshot/mac/mach_o_image_symbol_table_reader.cc @@ -53,6 +53,11 @@ class MachOImageSymbolTableReaderInitializer { DCHECK(linkedit_range_.IsValid()); } + MachOImageSymbolTableReaderInitializer( + const MachOImageSymbolTableReaderInitializer&) = delete; + MachOImageSymbolTableReaderInitializer& operator=( + const MachOImageSymbolTableReaderInitializer&) = delete; + ~MachOImageSymbolTableReaderInitializer() {} //! \brief Reads the symbol table from another process. @@ -246,8 +251,6 @@ class MachOImageSymbolTableReaderInitializer { CheckedMachAddressRange linkedit_range_; ProcessReaderMac* process_reader_; // weak const MachOImageSegmentReader* linkedit_segment_; // weak - - DISALLOW_COPY_AND_ASSIGN(MachOImageSymbolTableReaderInitializer); }; } // namespace internal diff --git a/snapshot/mac/mach_o_image_symbol_table_reader.h b/snapshot/mac/mach_o_image_symbol_table_reader.h index b1bcc3a2..2af48539 100644 --- a/snapshot/mac/mach_o_image_symbol_table_reader.h +++ b/snapshot/mac/mach_o_image_symbol_table_reader.h @@ -21,7 +21,6 @@ #include #include -#include "base/macros.h" #include "snapshot/mac/mach_o_image_segment_reader.h" #include "snapshot/mac/process_reader_mac.h" #include "snapshot/mac/process_types.h" @@ -66,6 +65,11 @@ class MachOImageSymbolTableReader { using SymbolInformationMap = std::map; MachOImageSymbolTableReader(); + + MachOImageSymbolTableReader(const MachOImageSymbolTableReader&) = delete; + MachOImageSymbolTableReader& operator=(const MachOImageSymbolTableReader&) = + delete; + ~MachOImageSymbolTableReader(); //! \brief Reads the symbol table from another process. @@ -123,8 +127,6 @@ class MachOImageSymbolTableReader { private: SymbolInformationMap external_defined_symbols_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(MachOImageSymbolTableReader); }; } // namespace crashpad diff --git a/snapshot/mac/module_snapshot_mac.h b/snapshot/mac/module_snapshot_mac.h index d78c3266..ce1e19da 100644 --- a/snapshot/mac/module_snapshot_mac.h +++ b/snapshot/mac/module_snapshot_mac.h @@ -22,7 +22,6 @@ #include #include -#include "base/macros.h" #include "client/crashpad_info.h" #include "snapshot/crashpad_info_client_options.h" #include "snapshot/mac/process_reader_mac.h" @@ -41,6 +40,10 @@ namespace internal { class ModuleSnapshotMac final : public ModuleSnapshot { public: ModuleSnapshotMac(); + + ModuleSnapshotMac(const ModuleSnapshotMac&) = delete; + ModuleSnapshotMac& operator=(const ModuleSnapshotMac&) = delete; + ~ModuleSnapshotMac() override; //! \brief Initializes the object. @@ -90,8 +93,6 @@ class ModuleSnapshotMac final : public ModuleSnapshot { const MachOImageReader* mach_o_image_reader_; // weak ProcessReaderMac* process_reader_; // weak InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ModuleSnapshotMac); }; } // namespace internal diff --git a/snapshot/mac/process_reader_mac.h b/snapshot/mac/process_reader_mac.h index 2f8ea9dc..85cfe7c9 100644 --- a/snapshot/mac/process_reader_mac.h +++ b/snapshot/mac/process_reader_mac.h @@ -26,7 +26,6 @@ #include #include -#include "base/macros.h" #include "build/build_config.h" #include "util/misc/initialization_state_dcheck.h" #include "util/posix/process_info.h" @@ -111,6 +110,10 @@ class ProcessReaderMac { }; ProcessReaderMac(); + + ProcessReaderMac(const ProcessReaderMac&) = delete; + ProcessReaderMac& operator=(const ProcessReaderMac&) = delete; + ~ProcessReaderMac(); //! \brief Initializes this object. This method must be called before any @@ -262,8 +265,6 @@ class ProcessReaderMac { bool initialized_threads_; bool initialized_modules_; - - DISALLOW_COPY_AND_ASSIGN(ProcessReaderMac); }; } // namespace crashpad diff --git a/snapshot/mac/process_reader_mac_test.cc b/snapshot/mac/process_reader_mac_test.cc index c2c504cf..2f377584 100644 --- a/snapshot/mac/process_reader_mac_test.cc +++ b/snapshot/mac/process_reader_mac_test.cc @@ -82,6 +82,9 @@ class ProcessReaderChild final : public MachMultiprocess { public: ProcessReaderChild() : MachMultiprocess() {} + ProcessReaderChild(const ProcessReaderChild&) = delete; + ProcessReaderChild& operator=(const ProcessReaderChild&) = delete; + ~ProcessReaderChild() {} private: @@ -118,8 +121,6 @@ class ProcessReaderChild final : public MachMultiprocess { // the pipe. CheckedReadFileAtEOF(ReadPipeHandle()); } - - DISALLOW_COPY_AND_ASSIGN(ProcessReaderChild); }; TEST(ProcessReaderMac, ChildBasic) { @@ -166,6 +167,9 @@ class TestThreadPool { TestThreadPool() : thread_infos_() {} + TestThreadPool(const TestThreadPool&) = delete; + TestThreadPool& operator=(const TestThreadPool&) = delete; + // Resumes suspended threads, signals each thread’s exit semaphore asking it // to exit, and joins each thread, blocking until they have all exited. ~TestThreadPool() { @@ -289,8 +293,6 @@ class TestThreadPool { // This is a vector of pointers because the address of a ThreadInfo object is // passed to each thread’s ThreadMain(), so they cannot move around in memory. std::vector> thread_infos_; - - DISALLOW_COPY_AND_ASSIGN(TestThreadPool); }; using ThreadMap = std::map; @@ -432,6 +434,10 @@ class ProcessReaderThreadedChild final : public MachMultiprocess { explicit ProcessReaderThreadedChild(size_t thread_count) : MachMultiprocess(), thread_count_(thread_count) {} + ProcessReaderThreadedChild(const ProcessReaderThreadedChild&) = delete; + ProcessReaderThreadedChild& operator=(const ProcessReaderThreadedChild&) = + delete; + ~ProcessReaderThreadedChild() {} private: @@ -516,8 +522,6 @@ class ProcessReaderThreadedChild final : public MachMultiprocess { } size_t thread_count_; - - DISALLOW_COPY_AND_ASSIGN(ProcessReaderThreadedChild); }; TEST(ProcessReaderMac, ChildOneThread) { @@ -622,6 +626,9 @@ class ScopedOpenCLNoOpKernel { kernel_(nullptr), success_(false) {} + ScopedOpenCLNoOpKernel(const ScopedOpenCLNoOpKernel&) = delete; + ScopedOpenCLNoOpKernel& operator=(const ScopedOpenCLNoOpKernel&) = delete; + ~ScopedOpenCLNoOpKernel() { if (kernel_) { cl_int rv = clReleaseKernel(kernel_); @@ -720,8 +727,6 @@ class ScopedOpenCLNoOpKernel { cl_program program_; cl_kernel kernel_; bool success_; - - DISALLOW_COPY_AND_ASSIGN(ScopedOpenCLNoOpKernel); }; // Although Mac OS X 10.6 has OpenCL and can compile and execute OpenCL code, @@ -809,6 +814,10 @@ class ProcessReaderModulesChild final : public MachMultiprocess { : MachMultiprocess(), ensure_cl_kernels_success_(ensure_cl_kernels_success) {} + ProcessReaderModulesChild(const ProcessReaderModulesChild&) = delete; + ProcessReaderModulesChild& operator=(const ProcessReaderModulesChild&) = + delete; + ~ProcessReaderModulesChild() {} private: @@ -925,8 +934,6 @@ class ProcessReaderModulesChild final : public MachMultiprocess { } bool ensure_cl_kernels_success_; - - DISALLOW_COPY_AND_ASSIGN(ProcessReaderModulesChild); }; TEST(ProcessReaderMac, ChildModules) { diff --git a/snapshot/mac/process_snapshot_mac.h b/snapshot/mac/process_snapshot_mac.h index 2edc2220..59239102 100644 --- a/snapshot/mac/process_snapshot_mac.h +++ b/snapshot/mac/process_snapshot_mac.h @@ -24,7 +24,6 @@ #include #include -#include "base/macros.h" #include "client/crashpad_info.h" #include "snapshot/crashpad_info_client_options.h" #include "snapshot/exception_snapshot.h" @@ -50,6 +49,10 @@ namespace crashpad { class ProcessSnapshotMac final : public ProcessSnapshot { public: ProcessSnapshotMac(); + + ProcessSnapshotMac(const ProcessSnapshotMac&) = delete; + ProcessSnapshotMac& operator=(const ProcessSnapshotMac&) = delete; + ~ProcessSnapshotMac() override; //! \brief Initializes the object. @@ -150,8 +153,6 @@ class ProcessSnapshotMac final : public ProcessSnapshot { std::map annotations_simple_map_; timeval snapshot_time_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ProcessSnapshotMac); }; } // namespace crashpad diff --git a/snapshot/mac/system_snapshot_mac.h b/snapshot/mac/system_snapshot_mac.h index 62b2ae61..cca6be25 100644 --- a/snapshot/mac/system_snapshot_mac.h +++ b/snapshot/mac/system_snapshot_mac.h @@ -19,7 +19,6 @@ #include -#include "base/macros.h" #include "snapshot/system_snapshot.h" #include "util/misc/initialization_state_dcheck.h" @@ -33,6 +32,10 @@ namespace internal { class SystemSnapshotMac final : public SystemSnapshot { public: SystemSnapshotMac(); + + SystemSnapshotMac(const SystemSnapshotMac&) = delete; + SystemSnapshotMac& operator=(const SystemSnapshotMac&) = delete; + ~SystemSnapshotMac() override; //! \brief Initializes the object. @@ -91,8 +94,6 @@ class SystemSnapshotMac final : public SystemSnapshot { int os_version_bugfix_; bool os_server_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(SystemSnapshotMac); }; } // namespace internal diff --git a/snapshot/mac/system_snapshot_mac_test.cc b/snapshot/mac/system_snapshot_mac_test.cc index 0cf1a7cf..6bf32b1f 100644 --- a/snapshot/mac/system_snapshot_mac_test.cc +++ b/snapshot/mac/system_snapshot_mac_test.cc @@ -43,6 +43,9 @@ class SystemSnapshotMacTest : public testing::Test { system_snapshot_() { } + SystemSnapshotMacTest(const SystemSnapshotMacTest&) = delete; + SystemSnapshotMacTest& operator=(const SystemSnapshotMacTest&) = delete; + const internal::SystemSnapshotMac& system_snapshot() const { return system_snapshot_; } @@ -59,8 +62,6 @@ class SystemSnapshotMacTest : public testing::Test { ProcessReaderMac process_reader_; timeval snapshot_time_; internal::SystemSnapshotMac system_snapshot_; - - DISALLOW_COPY_AND_ASSIGN(SystemSnapshotMacTest); }; TEST_F(SystemSnapshotMacTest, GetCPUArchitecture) { diff --git a/snapshot/mac/thread_snapshot_mac.h b/snapshot/mac/thread_snapshot_mac.h index 06331fa8..4d9cb316 100644 --- a/snapshot/mac/thread_snapshot_mac.h +++ b/snapshot/mac/thread_snapshot_mac.h @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" #include "build/build_config.h" #include "snapshot/cpu_context.h" #include "snapshot/mac/process_reader_mac.h" @@ -38,6 +37,10 @@ namespace internal { class ThreadSnapshotMac final : public ThreadSnapshot { public: ThreadSnapshotMac(); + + ThreadSnapshotMac(const ThreadSnapshotMac&) = delete; + ThreadSnapshotMac& operator=(const ThreadSnapshotMac&) = delete; + ~ThreadSnapshotMac() override; //! \brief Initializes the object. @@ -81,8 +84,6 @@ class ThreadSnapshotMac final : public ThreadSnapshot { int suspend_count_; int priority_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ThreadSnapshotMac); }; } // namespace internal diff --git a/snapshot/memory_snapshot_generic.h b/snapshot/memory_snapshot_generic.h index 6e50a585..b09e7a96 100644 --- a/snapshot/memory_snapshot_generic.h +++ b/snapshot/memory_snapshot_generic.h @@ -19,7 +19,6 @@ #include #include "base/logging.h" -#include "base/macros.h" #include "base/numerics/safe_math.h" #include "snapshot/memory_snapshot.h" #include "util/misc/address_types.h" @@ -35,6 +34,10 @@ namespace internal { class MemorySnapshotGeneric final : public MemorySnapshot { public: MemorySnapshotGeneric() = default; + + MemorySnapshotGeneric(const MemorySnapshotGeneric&) = delete; + MemorySnapshotGeneric& operator=(const MemorySnapshotGeneric&) = delete; + ~MemorySnapshotGeneric() = default; //! \brief Initializes the object. @@ -110,8 +113,6 @@ class MemorySnapshotGeneric final : public MemorySnapshot { VMAddress address_; size_t size_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(MemorySnapshotGeneric); }; } // namespace internal diff --git a/snapshot/memory_snapshot_test.cc b/snapshot/memory_snapshot_test.cc index 91e847fb..14ba78ee 100644 --- a/snapshot/memory_snapshot_test.cc +++ b/snapshot/memory_snapshot_test.cc @@ -14,7 +14,6 @@ #include "snapshot/memory_snapshot.h" -#include "base/macros.h" #include "gtest/gtest.h" #include "snapshot/test/test_memory_snapshot.h" diff --git a/snapshot/minidump/exception_snapshot_minidump.h b/snapshot/minidump/exception_snapshot_minidump.h index 62f834fe..917c237f 100644 --- a/snapshot/minidump/exception_snapshot_minidump.h +++ b/snapshot/minidump/exception_snapshot_minidump.h @@ -32,6 +32,11 @@ namespace internal { class ExceptionSnapshotMinidump final : public ExceptionSnapshot { public: ExceptionSnapshotMinidump(); + + ExceptionSnapshotMinidump(const ExceptionSnapshotMinidump&) = delete; + ExceptionSnapshotMinidump& operator=(const ExceptionSnapshotMinidump&) = + delete; + ~ExceptionSnapshotMinidump() override; //! \brief Initializes the object. @@ -66,8 +71,6 @@ class ExceptionSnapshotMinidump final : public ExceptionSnapshot { MinidumpContextConverter context_; std::vector exception_information_; InitializationState initialized_; - - DISALLOW_COPY_AND_ASSIGN(ExceptionSnapshotMinidump); }; } // namespace internal diff --git a/snapshot/minidump/memory_snapshot_minidump.h b/snapshot/minidump/memory_snapshot_minidump.h index 69521be0..0ab05b2c 100644 --- a/snapshot/minidump/memory_snapshot_minidump.h +++ b/snapshot/minidump/memory_snapshot_minidump.h @@ -20,7 +20,6 @@ #include -#include "base/macros.h" #include "snapshot/memory_snapshot.h" #include "util/file/file_reader.h" #include "util/misc/initialization_state_dcheck.h" @@ -30,6 +29,10 @@ namespace internal { class MemorySnapshotMinidump : public MemorySnapshot { public: MemorySnapshotMinidump(); + + MemorySnapshotMinidump(const MemorySnapshotMinidump&) = delete; + MemorySnapshotMinidump& operator=(const MemorySnapshotMinidump&) = delete; + ~MemorySnapshotMinidump() override; //! \brief Initializes the object. @@ -53,8 +56,6 @@ class MemorySnapshotMinidump : public MemorySnapshot { uint64_t address_; std::vector data_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(MemorySnapshotMinidump); }; } // namespace internal diff --git a/snapshot/minidump/minidump_stream.h b/snapshot/minidump/minidump_stream.h index 2b0ac2e1..20f1dda4 100644 --- a/snapshot/minidump/minidump_stream.h +++ b/snapshot/minidump/minidump_stream.h @@ -19,7 +19,6 @@ #include -#include "base/macros.h" namespace crashpad { @@ -29,14 +28,15 @@ class MinidumpStream { MinidumpStream(uint32_t stream_type, std::vector data) : stream_type_(stream_type), data_(data) {} + MinidumpStream(const MinidumpStream&) = delete; + MinidumpStream& operator=(const MinidumpStream&) = delete; + uint32_t stream_type() const { return stream_type_; } const std::vector& data() const { return data_; } private: uint32_t stream_type_; std::vector data_; - - DISALLOW_COPY_AND_ASSIGN(MinidumpStream); }; } // namespace crashpad diff --git a/snapshot/minidump/module_snapshot_minidump.h b/snapshot/minidump/module_snapshot_minidump.h index 023d0d59..f00e566b 100644 --- a/snapshot/minidump/module_snapshot_minidump.h +++ b/snapshot/minidump/module_snapshot_minidump.h @@ -24,7 +24,6 @@ #include #include -#include "base/macros.h" #include "snapshot/annotation_snapshot.h" #include "snapshot/module_snapshot.h" #include "util/file/file_reader.h" @@ -37,6 +36,10 @@ namespace internal { class ModuleSnapshotMinidump final : public ModuleSnapshot { public: ModuleSnapshotMinidump(); + + ModuleSnapshotMinidump(const ModuleSnapshotMinidump&) = delete; + ModuleSnapshotMinidump& operator=(const ModuleSnapshotMinidump&) = delete; + ~ModuleSnapshotMinidump() override; //! \brief Initializes the object. @@ -103,8 +106,6 @@ class ModuleSnapshotMinidump final : public ModuleSnapshot { std::string debug_file_name_; uint32_t age_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ModuleSnapshotMinidump); }; } // namespace internal diff --git a/snapshot/minidump/process_snapshot_minidump.h b/snapshot/minidump/process_snapshot_minidump.h index cf2d82bd..f76956d2 100644 --- a/snapshot/minidump/process_snapshot_minidump.h +++ b/snapshot/minidump/process_snapshot_minidump.h @@ -25,7 +25,6 @@ #include #include -#include "base/macros.h" #include "minidump/minidump_extensions.h" #include "snapshot/exception_snapshot.h" #include "snapshot/memory_snapshot.h" @@ -54,6 +53,10 @@ class MemoryMapRegionSnapshotMinidump; class ProcessSnapshotMinidump final : public ProcessSnapshot { public: ProcessSnapshotMinidump(); + + ProcessSnapshotMinidump(const ProcessSnapshotMinidump&) = delete; + ProcessSnapshotMinidump& operator=(const ProcessSnapshotMinidump&) = delete; + ~ProcessSnapshotMinidump() override; //! \brief Initializes the object. @@ -157,8 +160,6 @@ class ProcessSnapshotMinidump final : public ProcessSnapshot { uint32_t user_time_; uint32_t kernel_time_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ProcessSnapshotMinidump); }; } // namespace crashpad diff --git a/snapshot/minidump/system_snapshot_minidump.h b/snapshot/minidump/system_snapshot_minidump.h index 0f2880e1..8a7ad1f1 100644 --- a/snapshot/minidump/system_snapshot_minidump.h +++ b/snapshot/minidump/system_snapshot_minidump.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" #include "minidump/minidump_extensions.h" #include "snapshot/system_snapshot.h" #include "util/file/file_reader.h" @@ -30,6 +29,10 @@ namespace internal { class SystemSnapshotMinidump : public SystemSnapshot { public: SystemSnapshotMinidump(); + + SystemSnapshotMinidump(const SystemSnapshotMinidump&) = delete; + SystemSnapshotMinidump& operator=(const SystemSnapshotMinidump&) = delete; + ~SystemSnapshotMinidump() override; //! \brief Initializes the object. @@ -77,8 +80,6 @@ class SystemSnapshotMinidump : public SystemSnapshot { std::string minidump_build_name_; std::string full_version_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(SystemSnapshotMinidump); }; } // namespace internal diff --git a/snapshot/minidump/thread_snapshot_minidump.h b/snapshot/minidump/thread_snapshot_minidump.h index 262b8da6..7efb18d7 100644 --- a/snapshot/minidump/thread_snapshot_minidump.h +++ b/snapshot/minidump/thread_snapshot_minidump.h @@ -32,6 +32,10 @@ namespace internal { class ThreadSnapshotMinidump : public ThreadSnapshot { public: ThreadSnapshotMinidump(); + + ThreadSnapshotMinidump(const ThreadSnapshotMinidump&) = delete; + ThreadSnapshotMinidump& operator=(const ThreadSnapshotMinidump&) = delete; + ~ThreadSnapshotMinidump() override; //! \brief Initializes the object. @@ -70,8 +74,6 @@ class ThreadSnapshotMinidump : public ThreadSnapshot { MinidumpContextConverter context_; MemorySnapshotMinidump stack_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ThreadSnapshotMinidump); }; } // namespace internal diff --git a/snapshot/module_snapshot.h b/snapshot/module_snapshot.h index f7eb83c8..5f205cee 100644 --- a/snapshot/module_snapshot.h +++ b/snapshot/module_snapshot.h @@ -40,6 +40,9 @@ class UserMinidumpStream { UserMinidumpStream(uint32_t stream_type, MemorySnapshot* memory) : memory_(memory), stream_type_(stream_type) {} + UserMinidumpStream(const UserMinidumpStream&) = delete; + UserMinidumpStream& operator=(const UserMinidumpStream&) = delete; + const MemorySnapshot* memory() const { return memory_.get(); } uint32_t stream_type() const { return stream_type_; } @@ -49,8 +52,6 @@ class UserMinidumpStream { //! \brief The stream type that the minidump stream will be tagged with. uint32_t stream_type_; - - DISALLOW_COPY_AND_ASSIGN(UserMinidumpStream); }; //! \brief An abstract interface to a snapshot representing a code module diff --git a/snapshot/posix/timezone_test.cc b/snapshot/posix/timezone_test.cc index 4d60b837..6a343767 100644 --- a/snapshot/posix/timezone_test.cc +++ b/snapshot/posix/timezone_test.cc @@ -21,7 +21,6 @@ #include #include "base/cxx17_backports.h" -#include "base/macros.h" #include "base/strings/stringprintf.h" #include "gtest/gtest.h" #include "test/errors.h" @@ -43,6 +42,9 @@ class ScopedSetTZ { tzset(); } + ScopedSetTZ(const ScopedSetTZ&) = delete; + ScopedSetTZ& operator=(const ScopedSetTZ&) = delete; + ~ScopedSetTZ() { if (old_tz_set_) { EXPECT_EQ(setenv(kTZ, old_tz_.c_str(), 1), 0) << ErrnoMessage("setenv"); @@ -57,8 +59,6 @@ class ScopedSetTZ { bool old_tz_set_; static constexpr char kTZ[] = "TZ"; - - DISALLOW_COPY_AND_ASSIGN(ScopedSetTZ); }; constexpr char ScopedSetTZ::kTZ[]; diff --git a/snapshot/sanitized/memory_snapshot_sanitized.cc b/snapshot/sanitized/memory_snapshot_sanitized.cc index e71629df..a2534918 100644 --- a/snapshot/sanitized/memory_snapshot_sanitized.cc +++ b/snapshot/sanitized/memory_snapshot_sanitized.cc @@ -32,6 +32,9 @@ class MemorySanitizer : public MemorySnapshot::Delegate { address_(address), is_64_bit_(is_64_bit) {} + MemorySanitizer(const MemorySanitizer&) = delete; + MemorySanitizer& operator=(const MemorySanitizer&) = delete; + ~MemorySanitizer() = default; bool MemorySnapshotDelegateRead(void* data, size_t size) override { @@ -77,8 +80,6 @@ class MemorySanitizer : public MemorySnapshot::Delegate { RangeSet* ranges_; VMAddress address_; bool is_64_bit_; - - DISALLOW_COPY_AND_ASSIGN(MemorySanitizer); }; } // namespace diff --git a/snapshot/sanitized/memory_snapshot_sanitized.h b/snapshot/sanitized/memory_snapshot_sanitized.h index be3e5d4a..30885f5f 100644 --- a/snapshot/sanitized/memory_snapshot_sanitized.h +++ b/snapshot/sanitized/memory_snapshot_sanitized.h @@ -47,6 +47,9 @@ class MemorySnapshotSanitized final : public MemorySnapshot { RangeSet* ranges, bool is_64_bit); + MemorySnapshotSanitized(const MemorySnapshotSanitized&) = delete; + MemorySnapshotSanitized& operator=(const MemorySnapshotSanitized&) = delete; + ~MemorySnapshotSanitized() override; // MemorySnapshot: @@ -64,8 +67,6 @@ class MemorySnapshotSanitized final : public MemorySnapshot { const MemorySnapshot* snapshot_; RangeSet* ranges_; bool is_64_bit_; - - DISALLOW_COPY_AND_ASSIGN(MemorySnapshotSanitized); }; } // namespace internal diff --git a/snapshot/sanitized/module_snapshot_sanitized.h b/snapshot/sanitized/module_snapshot_sanitized.h index b64999e1..f8937f37 100644 --- a/snapshot/sanitized/module_snapshot_sanitized.h +++ b/snapshot/sanitized/module_snapshot_sanitized.h @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" #include "snapshot/module_snapshot.h" namespace crashpad { @@ -36,6 +35,10 @@ class ModuleSnapshotSanitized final : public ModuleSnapshot { //! `nullptr`, all annotations will be returned. ModuleSnapshotSanitized(const ModuleSnapshot* snapshot, const std::vector* allowed_annotations); + + ModuleSnapshotSanitized(const ModuleSnapshotSanitized&) = delete; + ModuleSnapshotSanitized& operator=(const ModuleSnapshotSanitized&) = delete; + ~ModuleSnapshotSanitized() override; // ModuleSnapshot: @@ -65,8 +68,6 @@ class ModuleSnapshotSanitized final : public ModuleSnapshot { private: const ModuleSnapshot* snapshot_; const std::vector* allowed_annotations_; - - DISALLOW_COPY_AND_ASSIGN(ModuleSnapshotSanitized); }; } // namespace internal diff --git a/snapshot/sanitized/process_snapshot_sanitized.h b/snapshot/sanitized/process_snapshot_sanitized.h index eb059732..86c7c4e4 100644 --- a/snapshot/sanitized/process_snapshot_sanitized.h +++ b/snapshot/sanitized/process_snapshot_sanitized.h @@ -19,7 +19,6 @@ #include #include -#include "base/macros.h" #include "snapshot/exception_snapshot.h" #include "snapshot/process_snapshot.h" #include "snapshot/sanitized/module_snapshot_sanitized.h" @@ -39,6 +38,10 @@ namespace crashpad { class ProcessSnapshotSanitized final : public ProcessSnapshot { public: ProcessSnapshotSanitized(); + + ProcessSnapshotSanitized(const ProcessSnapshotSanitized&) = delete; + ProcessSnapshotSanitized& operator=(const ProcessSnapshotSanitized&) = delete; + ~ProcessSnapshotSanitized() override; //! \brief Initializes this object. @@ -105,8 +108,6 @@ class ProcessSnapshotSanitized final : public ProcessSnapshot { std::unique_ptr> allowed_annotations_; bool sanitize_stacks_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ProcessSnapshotSanitized); }; } // namespace crashpad diff --git a/snapshot/sanitized/process_snapshot_sanitized_test.cc b/snapshot/sanitized/process_snapshot_sanitized_test.cc index 48aad785..0bdea432 100644 --- a/snapshot/sanitized/process_snapshot_sanitized_test.cc +++ b/snapshot/sanitized/process_snapshot_sanitized_test.cc @@ -17,7 +17,6 @@ #include #include "base/cxx17_backports.h" -#include "base/macros.h" #include "base/notreached.h" #include "build/build_config.h" #include "gtest/gtest.h" @@ -41,6 +40,9 @@ namespace { class ExceptionGenerator { public: + ExceptionGenerator(const ExceptionGenerator&) = delete; + ExceptionGenerator& operator=(const ExceptionGenerator&) = delete; + static ExceptionGenerator* Get() { static ExceptionGenerator* instance = new ExceptionGenerator(); return instance; @@ -73,8 +75,6 @@ class ExceptionGenerator { FileHandle in_; FileHandle out_; - - DISALLOW_COPY_AND_ASSIGN(ExceptionGenerator); }; constexpr char kAllowedAnnotationName[] = "name_of_allowed_anno"; @@ -248,6 +248,9 @@ class SanitizeTest : public MultiprocessExec { SetExpectedChildTerminationBuiltinTrap(); } + SanitizeTest(const SanitizeTest&) = delete; + SanitizeTest& operator=(const SanitizeTest&) = delete; + ~SanitizeTest() = default; private: @@ -298,8 +301,6 @@ class SanitizeTest : public MultiprocessExec { EXPECT_FALSE(screened_snapshot.Initialize( &snapshot, nullptr, nullptr, addrs.non_module_address, false)); } - - DISALLOW_COPY_AND_ASSIGN(SanitizeTest); }; TEST(ProcessSnapshotSanitized, Sanitize) { diff --git a/snapshot/sanitized/thread_snapshot_sanitized.h b/snapshot/sanitized/thread_snapshot_sanitized.h index 081627a6..dca0a0e9 100644 --- a/snapshot/sanitized/thread_snapshot_sanitized.h +++ b/snapshot/sanitized/thread_snapshot_sanitized.h @@ -34,6 +34,9 @@ class ThreadSnapshotSanitized final : public ThreadSnapshot { //! thread's stacks. \see internal::MemorySnapshotSanitized. ThreadSnapshotSanitized(const ThreadSnapshot* snapshot, RangeSet* ranges); + ThreadSnapshotSanitized(const ThreadSnapshotSanitized&) = delete; + ThreadSnapshotSanitized& operator=(const ThreadSnapshotSanitized&) = delete; + ~ThreadSnapshotSanitized() override; // ThreadSnapshot: @@ -49,8 +52,6 @@ class ThreadSnapshotSanitized final : public ThreadSnapshot { private: const ThreadSnapshot* snapshot_; MemorySnapshotSanitized stack_; - - DISALLOW_COPY_AND_ASSIGN(ThreadSnapshotSanitized); }; } // namespace internal diff --git a/snapshot/test/test_exception_snapshot.h b/snapshot/test/test_exception_snapshot.h index aa75539d..0f6b7c07 100644 --- a/snapshot/test/test_exception_snapshot.h +++ b/snapshot/test/test_exception_snapshot.h @@ -21,7 +21,6 @@ #include #include -#include "base/macros.h" #include "snapshot/cpu_context.h" #include "snapshot/exception_snapshot.h" @@ -33,6 +32,10 @@ namespace test { class TestExceptionSnapshot final : public ExceptionSnapshot { public: TestExceptionSnapshot(); + + TestExceptionSnapshot(const TestExceptionSnapshot&) = delete; + TestExceptionSnapshot& operator=(const TestExceptionSnapshot&) = delete; + ~TestExceptionSnapshot(); //! \brief Obtains a pointer to the underlying mutable CPUContext structure. @@ -85,8 +88,6 @@ class TestExceptionSnapshot final : public ExceptionSnapshot { uint64_t exception_address_; std::vector codes_; std::vector> extra_memory_; - - DISALLOW_COPY_AND_ASSIGN(TestExceptionSnapshot); }; } // namespace test diff --git a/snapshot/test/test_memory_map_region_snapshot.h b/snapshot/test/test_memory_map_region_snapshot.h index 0a768885..c4e1ca75 100644 --- a/snapshot/test/test_memory_map_region_snapshot.h +++ b/snapshot/test/test_memory_map_region_snapshot.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" #include "snapshot/memory_map_region_snapshot.h" namespace crashpad { @@ -28,6 +27,11 @@ namespace test { class TestMemoryMapRegionSnapshot final : public MemoryMapRegionSnapshot { public: TestMemoryMapRegionSnapshot(); + + TestMemoryMapRegionSnapshot(const TestMemoryMapRegionSnapshot&) = delete; + TestMemoryMapRegionSnapshot& operator=(const TestMemoryMapRegionSnapshot&) = + delete; + ~TestMemoryMapRegionSnapshot() override; void SetMindumpMemoryInfo(const MINIDUMP_MEMORY_INFO& mmi); @@ -37,8 +41,6 @@ class TestMemoryMapRegionSnapshot final : public MemoryMapRegionSnapshot { private: MINIDUMP_MEMORY_INFO memory_info_; - - DISALLOW_COPY_AND_ASSIGN(TestMemoryMapRegionSnapshot); }; } // namespace test diff --git a/snapshot/test/test_memory_snapshot.h b/snapshot/test/test_memory_snapshot.h index 011e6c6f..a9e8fb1a 100644 --- a/snapshot/test/test_memory_snapshot.h +++ b/snapshot/test/test_memory_snapshot.h @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" #include "snapshot/memory_snapshot.h" namespace crashpad { @@ -29,6 +28,10 @@ namespace test { class TestMemorySnapshot final : public MemorySnapshot { public: TestMemorySnapshot(); + + TestMemorySnapshot(const TestMemorySnapshot&) = delete; + TestMemorySnapshot& operator=(const TestMemorySnapshot&) = delete; + ~TestMemorySnapshot(); void SetAddress(uint64_t address) { address_ = address; } @@ -55,8 +58,6 @@ class TestMemorySnapshot final : public MemorySnapshot { size_t size_; char value_; bool should_fail_; - - DISALLOW_COPY_AND_ASSIGN(TestMemorySnapshot); }; } // namespace test diff --git a/snapshot/test/test_module_snapshot.h b/snapshot/test/test_module_snapshot.h index fb84aaf4..19e12990 100644 --- a/snapshot/test/test_module_snapshot.h +++ b/snapshot/test/test_module_snapshot.h @@ -22,7 +22,6 @@ #include #include -#include "base/macros.h" #include "snapshot/module_snapshot.h" namespace crashpad { @@ -33,6 +32,10 @@ namespace test { class TestModuleSnapshot final : public ModuleSnapshot { public: TestModuleSnapshot(); + + TestModuleSnapshot(const TestModuleSnapshot&) = delete; + TestModuleSnapshot& operator=(const TestModuleSnapshot&) = delete; + ~TestModuleSnapshot() override; void SetName(const std::string& name) { name_ = name; } @@ -127,8 +130,6 @@ class TestModuleSnapshot final : public ModuleSnapshot { std::map annotations_simple_map_; std::vector annotation_objects_; std::set> extra_memory_ranges_; - - DISALLOW_COPY_AND_ASSIGN(TestModuleSnapshot); }; } // namespace test diff --git a/snapshot/test/test_process_snapshot.h b/snapshot/test/test_process_snapshot.h index 5495cba1..16873fee 100644 --- a/snapshot/test/test_process_snapshot.h +++ b/snapshot/test/test_process_snapshot.h @@ -25,7 +25,6 @@ #include #include -#include "base/macros.h" #include "snapshot/exception_snapshot.h" #include "snapshot/memory_map_region_snapshot.h" #include "snapshot/memory_snapshot.h" @@ -46,6 +45,10 @@ namespace test { class TestProcessSnapshot final : public ProcessSnapshot { public: TestProcessSnapshot(); + + TestProcessSnapshot(const TestProcessSnapshot&) = delete; + TestProcessSnapshot& operator=(const TestProcessSnapshot&) = delete; + ~TestProcessSnapshot() override; void SetProcessID(crashpad::ProcessID process_id) { @@ -187,8 +190,6 @@ class TestProcessSnapshot final : public ProcessSnapshot { std::vector handles_; std::vector> extra_memory_; std::unique_ptr process_memory_; - - DISALLOW_COPY_AND_ASSIGN(TestProcessSnapshot); }; } // namespace test diff --git a/snapshot/test/test_system_snapshot.h b/snapshot/test/test_system_snapshot.h index 31787eba..61262656 100644 --- a/snapshot/test/test_system_snapshot.h +++ b/snapshot/test/test_system_snapshot.h @@ -19,7 +19,6 @@ #include -#include "base/macros.h" #include "snapshot/system_snapshot.h" namespace crashpad { @@ -30,6 +29,10 @@ namespace test { class TestSystemSnapshot final : public SystemSnapshot { public: TestSystemSnapshot(); + + TestSystemSnapshot(const TestSystemSnapshot&) = delete; + TestSystemSnapshot& operator=(const TestSystemSnapshot&) = delete; + ~TestSystemSnapshot() override; void SetCPUArchitecture(CPUArchitecture cpu_architecture) { @@ -138,8 +141,6 @@ class TestSystemSnapshot final : public SystemSnapshot { int time_zone_daylight_offset_seconds_; std::string time_zone_standard_name_; std::string time_zone_daylight_name_; - - DISALLOW_COPY_AND_ASSIGN(TestSystemSnapshot); }; } // namespace test diff --git a/snapshot/test/test_thread_snapshot.h b/snapshot/test/test_thread_snapshot.h index e705c164..f865bdfe 100644 --- a/snapshot/test/test_thread_snapshot.h +++ b/snapshot/test/test_thread_snapshot.h @@ -21,7 +21,6 @@ #include #include -#include "base/macros.h" #include "snapshot/cpu_context.h" #include "snapshot/memory_snapshot.h" #include "snapshot/thread_snapshot.h" @@ -34,6 +33,10 @@ namespace test { class TestThreadSnapshot final : public ThreadSnapshot { public: TestThreadSnapshot(); + + TestThreadSnapshot(const TestThreadSnapshot&) = delete; + TestThreadSnapshot& operator=(const TestThreadSnapshot&) = delete; + ~TestThreadSnapshot(); //! \brief Obtains a pointer to the underlying mutable CPUContext structure. @@ -97,8 +100,6 @@ class TestThreadSnapshot final : public ThreadSnapshot { int priority_; uint64_t thread_specific_data_address_; std::vector> extra_memory_; - - DISALLOW_COPY_AND_ASSIGN(TestThreadSnapshot); }; } // namespace test diff --git a/snapshot/win/exception_snapshot_win.h b/snapshot/win/exception_snapshot_win.h index fd4e8543..9167a9ef 100644 --- a/snapshot/win/exception_snapshot_win.h +++ b/snapshot/win/exception_snapshot_win.h @@ -21,7 +21,6 @@ #include #include -#include "base/macros.h" #include "build/build_config.h" #include "snapshot/cpu_context.h" #include "snapshot/exception_snapshot.h" @@ -50,6 +49,10 @@ union CPUContextUnion { class ExceptionSnapshotWin final : public ExceptionSnapshot { public: ExceptionSnapshotWin(); + + ExceptionSnapshotWin(const ExceptionSnapshotWin&) = delete; + ExceptionSnapshotWin& operator=(const ExceptionSnapshotWin&) = delete; + ~ExceptionSnapshotWin() override; //! \brief Initializes the object. @@ -102,8 +105,6 @@ class ExceptionSnapshotWin final : public ExceptionSnapshot { uint32_t exception_flags_; DWORD exception_code_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ExceptionSnapshotWin); }; } // namespace internal diff --git a/snapshot/win/exception_snapshot_win_test.cc b/snapshot/win/exception_snapshot_win_test.cc index 63f9bf8a..dbf9cfc0 100644 --- a/snapshot/win/exception_snapshot_win_test.cc +++ b/snapshot/win/exception_snapshot_win_test.cc @@ -42,6 +42,10 @@ class RunServerThread : public Thread { RunServerThread(ExceptionHandlerServer* server, ExceptionHandlerServer::Delegate* delegate) : server_(server), delegate_(delegate) {} + + RunServerThread(const RunServerThread&) = delete; + RunServerThread& operator=(const RunServerThread&) = delete; + ~RunServerThread() override {} private: @@ -50,8 +54,6 @@ class RunServerThread : public Thread { ExceptionHandlerServer* server_; ExceptionHandlerServer::Delegate* delegate_; - - DISALLOW_COPY_AND_ASSIGN(RunServerThread); }; // During destruction, ensures that the server is stopped and the background @@ -60,6 +62,11 @@ class ScopedStopServerAndJoinThread { public: ScopedStopServerAndJoinThread(ExceptionHandlerServer* server, Thread* thread) : server_(server), thread_(thread) {} + + ScopedStopServerAndJoinThread(const ScopedStopServerAndJoinThread&) = delete; + ScopedStopServerAndJoinThread& operator=( + const ScopedStopServerAndJoinThread&) = delete; + ~ScopedStopServerAndJoinThread() { server_->Stop(); thread_->Join(); @@ -68,7 +75,6 @@ class ScopedStopServerAndJoinThread { private: ExceptionHandlerServer* server_; Thread* thread_; - DISALLOW_COPY_AND_ASSIGN(ScopedStopServerAndJoinThread); }; class CrashingDelegate : public ExceptionHandlerServer::Delegate { @@ -77,6 +83,10 @@ class CrashingDelegate : public ExceptionHandlerServer::Delegate { : server_ready_(server_ready), completed_test_event_(completed_test_event), break_near_(0) {} + + CrashingDelegate(const CrashingDelegate&) = delete; + CrashingDelegate& operator=(const CrashingDelegate&) = delete; + ~CrashingDelegate() {} void set_break_near(WinVMAddress break_near) { break_near_ = break_near; } @@ -120,8 +130,6 @@ class CrashingDelegate : public ExceptionHandlerServer::Delegate { HANDLE server_ready_; // weak HANDLE completed_test_event_; // weak WinVMAddress break_near_; - - DISALLOW_COPY_AND_ASSIGN(CrashingDelegate); }; void TestCrashingChild(TestPaths::Architecture architecture) { @@ -192,6 +200,10 @@ class SimulateDelegate : public ExceptionHandlerServer::Delegate { : server_ready_(server_ready), completed_test_event_(completed_test_event), dump_near_(0) {} + + SimulateDelegate(const SimulateDelegate&) = delete; + SimulateDelegate& operator=(const SimulateDelegate&) = delete; + ~SimulateDelegate() {} void set_dump_near(WinVMAddress dump_near) { dump_near_ = dump_near; } @@ -240,8 +252,6 @@ class SimulateDelegate : public ExceptionHandlerServer::Delegate { HANDLE server_ready_; // weak HANDLE completed_test_event_; // weak WinVMAddress dump_near_; - - DISALLOW_COPY_AND_ASSIGN(SimulateDelegate); }; void TestDumpWithoutCrashingChild(TestPaths::Architecture architecture) { diff --git a/snapshot/win/module_snapshot_win.h b/snapshot/win/module_snapshot_win.h index b32216c3..5b375f43 100644 --- a/snapshot/win/module_snapshot_win.h +++ b/snapshot/win/module_snapshot_win.h @@ -23,7 +23,6 @@ #include #include -#include "base/macros.h" #include "snapshot/crashpad_info_client_options.h" #include "snapshot/crashpad_types/crashpad_info_reader.h" #include "snapshot/module_snapshot.h" @@ -44,6 +43,10 @@ namespace internal { class ModuleSnapshotWin final : public ModuleSnapshot { public: ModuleSnapshotWin(); + + ModuleSnapshotWin(const ModuleSnapshotWin&) = delete; + ModuleSnapshotWin& operator=(const ModuleSnapshotWin&) = delete; + ~ModuleSnapshotWin() override; //! \brief Initializes the object. @@ -124,8 +127,6 @@ class ModuleSnapshotWin final : public ModuleSnapshot { time_t timestamp_; uint32_t age_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ModuleSnapshotWin); }; } // namespace internal diff --git a/snapshot/win/pe_image_annotations_reader.h b/snapshot/win/pe_image_annotations_reader.h index 6379b278..97b1e8fe 100644 --- a/snapshot/win/pe_image_annotations_reader.h +++ b/snapshot/win/pe_image_annotations_reader.h @@ -19,7 +19,6 @@ #include #include -#include "base/macros.h" #include "snapshot/annotation_snapshot.h" namespace crashpad { @@ -49,6 +48,10 @@ class PEImageAnnotationsReader { PEImageAnnotationsReader(ProcessReaderWin* process_reader, const PEImageReader* pe_image_reader, const std::wstring& name); + + PEImageAnnotationsReader(const PEImageAnnotationsReader&) = delete; + PEImageAnnotationsReader& operator=(const PEImageAnnotationsReader&) = delete; + ~PEImageAnnotationsReader() {} //! \brief Returns the module's annotations that are organized as key-value @@ -73,8 +76,6 @@ class PEImageAnnotationsReader { std::wstring name_; ProcessReaderWin* process_reader_; // weak const PEImageReader* pe_image_reader_; // weak - - DISALLOW_COPY_AND_ASSIGN(PEImageAnnotationsReader); }; } // namespace crashpad diff --git a/snapshot/win/pe_image_reader.h b/snapshot/win/pe_image_reader.h index ebdbe578..a2bd28ec 100644 --- a/snapshot/win/pe_image_reader.h +++ b/snapshot/win/pe_image_reader.h @@ -21,7 +21,6 @@ #include -#include "base/macros.h" #include "snapshot/win/process_subrange_reader.h" #include "util/misc/initialization_state_dcheck.h" #include "util/misc/uuid.h" @@ -63,6 +62,10 @@ struct CrashpadInfo { class PEImageReader { public: PEImageReader(); + + PEImageReader(const PEImageReader&) = delete; + PEImageReader& operator=(const PEImageReader&) = delete; + ~PEImageReader(); //! \brief Initializes the reader. @@ -194,8 +197,6 @@ class PEImageReader { ProcessSubrangeReader module_subrange_reader_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(PEImageReader); }; } // namespace crashpad diff --git a/snapshot/win/pe_image_resource_reader.h b/snapshot/win/pe_image_resource_reader.h index ce339dd2..a8468db7 100644 --- a/snapshot/win/pe_image_resource_reader.h +++ b/snapshot/win/pe_image_resource_reader.h @@ -20,7 +20,6 @@ #include -#include "base/macros.h" #include "snapshot/win/process_subrange_reader.h" #include "util/misc/initialization_state_dcheck.h" #include "util/win/address_types.h" @@ -34,6 +33,10 @@ namespace crashpad { class PEImageResourceReader { public: PEImageResourceReader(); + + PEImageResourceReader(const PEImageResourceReader&) = delete; + PEImageResourceReader& operator=(const PEImageResourceReader&) = delete; + ~PEImageResourceReader(); //! \brief Initializes the resource reader. @@ -170,8 +173,6 @@ class PEImageResourceReader { ProcessSubrangeReader resources_subrange_reader_; WinVMAddress module_base_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(PEImageResourceReader); }; } // namespace crashpad diff --git a/snapshot/win/process_reader_win.h b/snapshot/win/process_reader_win.h index a4e32aaf..7875de04 100644 --- a/snapshot/win/process_reader_win.h +++ b/snapshot/win/process_reader_win.h @@ -20,7 +20,6 @@ #include -#include "base/macros.h" #include "build/build_config.h" #include "util/misc/initialization_state_dcheck.h" #include "util/process/process_memory_win.h" @@ -63,6 +62,10 @@ class ProcessReaderWin { }; ProcessReaderWin(); + + ProcessReaderWin(const ProcessReaderWin&) = delete; + ProcessReaderWin& operator=(const ProcessReaderWin&) = delete; + ~ProcessReaderWin(); //! \brief Initializes this object. This method must be called before any @@ -135,8 +138,6 @@ class ProcessReaderWin { ProcessSuspensionState suspension_state_; bool initialized_threads_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ProcessReaderWin); }; } // namespace crashpad diff --git a/snapshot/win/process_reader_win_test.cc b/snapshot/win/process_reader_win_test.cc index 7c6c7399..68933bbe 100644 --- a/snapshot/win/process_reader_win_test.cc +++ b/snapshot/win/process_reader_win_test.cc @@ -55,6 +55,10 @@ constexpr char kTestMemory[] = "Read me from another process"; class ProcessReaderChild final : public WinMultiprocess { public: ProcessReaderChild() : WinMultiprocess() {} + + ProcessReaderChild(const ProcessReaderChild&) = delete; + ProcessReaderChild& operator=(const ProcessReaderChild&) = delete; + ~ProcessReaderChild() {} private: @@ -86,8 +90,6 @@ class ProcessReaderChild final : public WinMultiprocess { // the pipe. CheckedReadFileAtEOF(ReadPipeHandle()); } - - DISALLOW_COPY_AND_ASSIGN(ProcessReaderChild); }; TEST(ProcessReaderWin, ChildBasic) { @@ -115,6 +117,12 @@ TEST(ProcessReaderWin, SelfOneThread) { class ProcessReaderChildThreadSuspendCount final : public WinMultiprocess { public: ProcessReaderChildThreadSuspendCount() : WinMultiprocess() {} + + ProcessReaderChildThreadSuspendCount( + const ProcessReaderChildThreadSuspendCount&) = delete; + ProcessReaderChildThreadSuspendCount& operator=( + const ProcessReaderChildThreadSuspendCount&) = delete; + ~ProcessReaderChildThreadSuspendCount() {} private: @@ -190,8 +198,6 @@ class ProcessReaderChildThreadSuspendCount final : public WinMultiprocess { for (auto& thread : threads) thread.Join(); } - - DISALLOW_COPY_AND_ASSIGN(ProcessReaderChildThreadSuspendCount); }; TEST(ProcessReaderWin, ChildThreadSuspendCounts) { diff --git a/snapshot/win/process_snapshot_win.h b/snapshot/win/process_snapshot_win.h index 8b0bf526..7a8ae2fd 100644 --- a/snapshot/win/process_snapshot_win.h +++ b/snapshot/win/process_snapshot_win.h @@ -25,7 +25,6 @@ #include #include -#include "base/macros.h" #include "client/crashpad_info.h" #include "snapshot/crashpad_info_client_options.h" #include "snapshot/exception_snapshot.h" @@ -55,6 +54,10 @@ namespace crashpad { class ProcessSnapshotWin final : public ProcessSnapshot { public: ProcessSnapshotWin(); + + ProcessSnapshotWin(const ProcessSnapshotWin&) = delete; + ProcessSnapshotWin& operator=(const ProcessSnapshotWin&) = delete; + ~ProcessSnapshotWin() override; //! \brief Initializes the object. @@ -192,8 +195,6 @@ class ProcessSnapshotWin final : public ProcessSnapshot { timeval snapshot_time_; CrashpadInfoClientOptions options_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ProcessSnapshotWin); }; } // namespace crashpad diff --git a/snapshot/win/process_subrange_reader.h b/snapshot/win/process_subrange_reader.h index f6af00ed..bcdff5e2 100644 --- a/snapshot/win/process_subrange_reader.h +++ b/snapshot/win/process_subrange_reader.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" #include "util/misc/initialization_state_dcheck.h" #include "util/win/address_types.h" #include "util/win/checked_win_address_range.h" @@ -35,6 +34,10 @@ class ProcessReaderWin; class ProcessSubrangeReader { public: ProcessSubrangeReader(); + + ProcessSubrangeReader(const ProcessSubrangeReader&) = delete; + ProcessSubrangeReader& operator=(const ProcessSubrangeReader&) = delete; + ~ProcessSubrangeReader(); //! \brief Initializes the object. @@ -105,8 +108,6 @@ class ProcessSubrangeReader { CheckedWinAddressRange range_; ProcessReaderWin* process_reader_; // weak InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ProcessSubrangeReader); }; } // namespace crashpad diff --git a/snapshot/win/system_snapshot_win.h b/snapshot/win/system_snapshot_win.h index fc209a5f..d10c25f2 100644 --- a/snapshot/win/system_snapshot_win.h +++ b/snapshot/win/system_snapshot_win.h @@ -20,7 +20,6 @@ #include -#include "base/macros.h" #include "snapshot/system_snapshot.h" #include "snapshot/win/process_reader_win.h" #include "util/misc/initialization_state_dcheck.h" @@ -35,6 +34,10 @@ namespace internal { class SystemSnapshotWin final : public SystemSnapshot { public: SystemSnapshotWin(); + + SystemSnapshotWin(const SystemSnapshotWin&) = delete; + SystemSnapshotWin& operator=(const SystemSnapshotWin&) = delete; + ~SystemSnapshotWin() override; //! \brief Initializes the object. @@ -86,8 +89,6 @@ class SystemSnapshotWin final : public SystemSnapshot { int os_version_bugfix_; bool os_server_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(SystemSnapshotWin); }; } // namespace internal diff --git a/snapshot/win/system_snapshot_win_test.cc b/snapshot/win/system_snapshot_win_test.cc index d93c654c..c8716b33 100644 --- a/snapshot/win/system_snapshot_win_test.cc +++ b/snapshot/win/system_snapshot_win_test.cc @@ -35,6 +35,9 @@ class SystemSnapshotWinTest : public testing::Test { system_snapshot_() { } + SystemSnapshotWinTest(const SystemSnapshotWinTest&) = delete; + SystemSnapshotWinTest& operator=(const SystemSnapshotWinTest&) = delete; + const internal::SystemSnapshotWin& system_snapshot() const { return system_snapshot_; } @@ -49,8 +52,6 @@ class SystemSnapshotWinTest : public testing::Test { private: ProcessReaderWin process_reader_; internal::SystemSnapshotWin system_snapshot_; - - DISALLOW_COPY_AND_ASSIGN(SystemSnapshotWinTest); }; TEST_F(SystemSnapshotWinTest, GetCPUArchitecture) { diff --git a/snapshot/win/thread_snapshot_win.h b/snapshot/win/thread_snapshot_win.h index 64ec43de..b9fafaa2 100644 --- a/snapshot/win/thread_snapshot_win.h +++ b/snapshot/win/thread_snapshot_win.h @@ -20,7 +20,6 @@ #include #include -#include "base/macros.h" #include "build/build_config.h" #include "snapshot/cpu_context.h" #include "snapshot/memory_snapshot.h" @@ -40,6 +39,10 @@ namespace internal { class ThreadSnapshotWin final : public ThreadSnapshot { public: ThreadSnapshotWin(); + + ThreadSnapshotWin(const ThreadSnapshotWin&) = delete; + ThreadSnapshotWin& operator=(const ThreadSnapshotWin&) = delete; + ~ThreadSnapshotWin() override; //! \brief Initializes the object. @@ -87,8 +90,6 @@ class ThreadSnapshotWin final : public ThreadSnapshot { ProcessReaderWin::Thread thread_; InitializationStateDcheck initialized_; std::vector> pointed_to_memory_; - - DISALLOW_COPY_AND_ASSIGN(ThreadSnapshotWin); }; } // namespace internal diff --git a/test/linux/fake_ptrace_connection.h b/test/linux/fake_ptrace_connection.h index 79cdbd96..bf09d95d 100644 --- a/test/linux/fake_ptrace_connection.h +++ b/test/linux/fake_ptrace_connection.h @@ -20,7 +20,6 @@ #include #include -#include "base/macros.h" #include "util/linux/ptrace_connection.h" #include "util/misc/initialization_state_dcheck.h" #include "util/process/process_memory_linux.h" @@ -35,6 +34,10 @@ namespace test { class FakePtraceConnection : public PtraceConnection { public: FakePtraceConnection(); + + FakePtraceConnection(const FakePtraceConnection&) = delete; + FakePtraceConnection& operator=(const FakePtraceConnection&) = delete; + ~FakePtraceConnection(); //! \brief Initializes this connection for the process whose process ID is @@ -74,8 +77,6 @@ class FakePtraceConnection : public PtraceConnection { pid_t pid_; bool is_64_bit_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(FakePtraceConnection); }; } // namespace test diff --git a/test/mac/exception_swallower.cc b/test/mac/exception_swallower.cc index 76ca3948..3098643b 100644 --- a/test/mac/exception_swallower.cc +++ b/test/mac/exception_swallower.cc @@ -66,6 +66,9 @@ class ExceptionSwallower::ExceptionSwallowerThread Start(); } + ExceptionSwallowerThread(const ExceptionSwallowerThread&) = delete; + ExceptionSwallowerThread& operator=(const ExceptionSwallowerThread&) = delete; + ~ExceptionSwallowerThread() override {} void Stop() { exception_handler_server_.Stop(); } @@ -107,8 +110,6 @@ class ExceptionSwallower::ExceptionSwallowerThread ExceptionHandlerServer exception_handler_server_; pid_t pid_; - - DISALLOW_COPY_AND_ASSIGN(ExceptionSwallowerThread); }; ExceptionSwallower::ExceptionSwallower() : exception_swallower_thread_() { diff --git a/test/mac/exception_swallower.h b/test/mac/exception_swallower.h index 7c3a4421..ac145620 100644 --- a/test/mac/exception_swallower.h +++ b/test/mac/exception_swallower.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" namespace crashpad { namespace test { @@ -56,6 +55,10 @@ namespace test { class ExceptionSwallower { public: ExceptionSwallower(); + + ExceptionSwallower(const ExceptionSwallower&) = delete; + ExceptionSwallower& operator=(const ExceptionSwallower&) = delete; + ~ExceptionSwallower(); //! \brief In a test child process, arranges to swallow `EXC_CRASH` and @@ -76,8 +79,6 @@ class ExceptionSwallower { class ExceptionSwallowerThread; std::unique_ptr exception_swallower_thread_; - - DISALLOW_COPY_AND_ASSIGN(ExceptionSwallower); }; } // namespace test diff --git a/test/mac/mach_multiprocess.cc b/test/mac/mach_multiprocess.cc index 01b242a6..35df0611 100644 --- a/test/mac/mach_multiprocess.cc +++ b/test/mac/mach_multiprocess.cc @@ -22,6 +22,7 @@ #include "base/auto_reset.h" #include "base/mac/scoped_mach_port.h" +#include "base/macros.h" #include "gtest/gtest.h" #include "test/errors.h" #include "test/mac/mach_errors.h" diff --git a/test/mac/mach_multiprocess.h b/test/mac/mach_multiprocess.h index 8b7063d6..b3b0bb1b 100644 --- a/test/mac/mach_multiprocess.h +++ b/test/mac/mach_multiprocess.h @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" #include "test/multiprocess.h" namespace crashpad { @@ -43,6 +42,9 @@ class MachMultiprocess : public Multiprocess { public: MachMultiprocess(); + MachMultiprocess(const MachMultiprocess&) = delete; + MachMultiprocess& operator=(const MachMultiprocess&) = delete; + void Run(); protected: @@ -110,8 +112,6 @@ class MachMultiprocess : public Multiprocess { virtual void MachMultiprocessChild() = 0; internal::MachMultiprocessInfo* info_; - - DISALLOW_COPY_AND_ASSIGN(MachMultiprocess); }; } // namespace test diff --git a/test/mac/mach_multiprocess_test.cc b/test/mac/mach_multiprocess_test.cc index ef395591..455249bd 100644 --- a/test/mac/mach_multiprocess_test.cc +++ b/test/mac/mach_multiprocess_test.cc @@ -16,7 +16,6 @@ #include -#include "base/macros.h" #include "gtest/gtest.h" namespace crashpad { @@ -27,6 +26,9 @@ class TestMachMultiprocess final : public MachMultiprocess { public: TestMachMultiprocess() : MachMultiprocess() {} + TestMachMultiprocess(const TestMachMultiprocess&) = delete; + TestMachMultiprocess& operator=(const TestMachMultiprocess&) = delete; + ~TestMachMultiprocess() {} private: @@ -35,8 +37,6 @@ class TestMachMultiprocess final : public MachMultiprocess { void MachMultiprocessParent() override {} void MachMultiprocessChild() override {} - - DISALLOW_COPY_AND_ASSIGN(TestMachMultiprocess); }; TEST(MachMultiprocess, MachMultiprocess) { diff --git a/test/multiprocess.h b/test/multiprocess.h index eb161616..ca48ce80 100644 --- a/test/multiprocess.h +++ b/test/multiprocess.h @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" #include "build/build_config.h" #include "util/file/file_io.h" @@ -67,6 +66,9 @@ class Multiprocess { Multiprocess(); + Multiprocess(const Multiprocess&) = delete; + Multiprocess& operator=(const Multiprocess&) = delete; + //! \brief Runs the test. //! //! This method establishes the proper testing environment by calling @@ -222,8 +224,6 @@ class Multiprocess { internal::MultiprocessInfo* info_; ReturnCodeType code_; TerminationReason reason_; - - DISALLOW_COPY_AND_ASSIGN(Multiprocess); }; } // namespace test diff --git a/test/multiprocess_exec.h b/test/multiprocess_exec.h index 1e17a07a..a03f8c1a 100644 --- a/test/multiprocess_exec.h +++ b/test/multiprocess_exec.h @@ -19,7 +19,6 @@ #include #include "base/files/file_path.h" -#include "base/macros.h" #include "build/build_config.h" #include "test/multiprocess.h" #include "test/process_type.h" @@ -89,6 +88,9 @@ class MultiprocessExec : public Multiprocess { public: MultiprocessExec(); + MultiprocessExec(const MultiprocessExec&) = delete; + MultiprocessExec& operator=(const MultiprocessExec&) = delete; + //! \brief Sets the command to `exec()` in the child. //! //! This method must be called before the test can be Run(). @@ -144,8 +146,6 @@ class MultiprocessExec : public Multiprocess { #elif defined(OS_WIN) std::wstring command_line_; #endif // OS_POSIX - - DISALLOW_COPY_AND_ASSIGN(MultiprocessExec); }; } // namespace test diff --git a/test/multiprocess_exec_test.cc b/test/multiprocess_exec_test.cc index 4f5418ad..fb77d642 100644 --- a/test/multiprocess_exec_test.cc +++ b/test/multiprocess_exec_test.cc @@ -15,7 +15,6 @@ #include "test/multiprocess_exec.h" #include "base/logging.h" -#include "base/macros.h" #include "base/strings/utf_string_conversions.h" #include "build/build_config.h" #include "gtest/gtest.h" @@ -30,6 +29,9 @@ class TestMultiprocessExec final : public MultiprocessExec { public: TestMultiprocessExec() : MultiprocessExec() {} + TestMultiprocessExec(const TestMultiprocessExec&) = delete; + TestMultiprocessExec& operator=(const TestMultiprocessExec&) = delete; + ~TestMultiprocessExec() {} private: @@ -44,8 +46,6 @@ class TestMultiprocessExec final : public MultiprocessExec { ASSERT_TRUE(LoggingReadFileExactly(ReadPipeHandle(), &c, 1)); EXPECT_EQ(c, 'Z'); } - - DISALLOW_COPY_AND_ASSIGN(TestMultiprocessExec); }; TEST(MultiprocessExec, MultiprocessExec) { @@ -82,12 +82,15 @@ CRASHPAD_CHILD_TEST_MAIN(SimpleMultiprocessReturnsNonZero) { class TestMultiprocessExecEmpty final : public MultiprocessExec { public: TestMultiprocessExecEmpty() = default; + + TestMultiprocessExecEmpty(const TestMultiprocessExecEmpty&) = delete; + TestMultiprocessExecEmpty& operator=(const TestMultiprocessExecEmpty&) = + delete; + ~TestMultiprocessExecEmpty() = default; private: void MultiprocessParent() override {} - - DISALLOW_COPY_AND_ASSIGN(TestMultiprocessExecEmpty); }; TEST(MultiprocessExec, MultiprocessExecSimpleChildReturnsNonZero) { @@ -112,12 +115,14 @@ class TestBuiltinTrapTermination final : public MultiprocessExec { SetExpectedChildTerminationBuiltinTrap(); } + TestBuiltinTrapTermination(const TestBuiltinTrapTermination&) = delete; + TestBuiltinTrapTermination& operator=(const TestBuiltinTrapTermination&) = + delete; + ~TestBuiltinTrapTermination() = default; private: void MultiprocessParent() override {} - - DISALLOW_COPY_AND_ASSIGN(TestBuiltinTrapTermination); }; TEST(MultiprocessExec, BuiltinTrapTermination) { diff --git a/test/multiprocess_posix_test.cc b/test/multiprocess_posix_test.cc index b8666957..dd5f63f7 100644 --- a/test/multiprocess_posix_test.cc +++ b/test/multiprocess_posix_test.cc @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" #include "gtest/gtest.h" #include "test/gtest_death.h" #include "util/file/file_io.h" @@ -31,6 +30,9 @@ class TestMultiprocess final : public Multiprocess { public: TestMultiprocess() : Multiprocess() {} + TestMultiprocess(const TestMultiprocess&) = delete; + TestMultiprocess& operator=(const TestMultiprocess&) = delete; + ~TestMultiprocess() {} private: @@ -66,8 +68,6 @@ class TestMultiprocess final : public Multiprocess { CheckedReadFileExactly(ReadPipeHandle(), &c, 1); EXPECT_EQ(c, 'm'); } - - DISALLOW_COPY_AND_ASSIGN(TestMultiprocess); }; TEST(Multiprocess, Multiprocess) { @@ -94,6 +94,9 @@ class TestMultiprocessUnclean final : public Multiprocess { } } + TestMultiprocessUnclean(const TestMultiprocessUnclean&) = delete; + TestMultiprocessUnclean& operator=(const TestMultiprocessUnclean&) = delete; + ~TestMultiprocessUnclean() {} private: @@ -115,8 +118,6 @@ class TestMultiprocessUnclean final : public Multiprocess { } TerminationType type_; - - DISALLOW_COPY_AND_ASSIGN(TestMultiprocessUnclean); }; TEST(Multiprocess, SuccessfulExit) { @@ -159,6 +160,10 @@ class TestMultiprocessClosePipe final : public Multiprocess { testing::GTEST_FLAG(death_test_style) = "fast"; } + TestMultiprocessClosePipe(const TestMultiprocessClosePipe&) = delete; + TestMultiprocessClosePipe& operator=(const TestMultiprocessClosePipe&) = + delete; + ~TestMultiprocessClosePipe() {} private: @@ -241,8 +246,6 @@ class TestMultiprocessClosePipe final : public Multiprocess { WhoCloses who_closes_; WhatCloses what_closes_; - - DISALLOW_COPY_AND_ASSIGN(TestMultiprocessClosePipe); }; TEST(MultiprocessDeathTest, ParentClosesReadPipe) { diff --git a/test/scoped_guarded_page.h b/test/scoped_guarded_page.h index 55ef2727..f7513d4f 100644 --- a/test/scoped_guarded_page.h +++ b/test/scoped_guarded_page.h @@ -15,7 +15,6 @@ #ifndef CRASHPAD_TEST_SCOPED_GUARDED_PAGE_ #define CRASHPAD_TEST_SCOPED_GUARDED_PAGE_ -#include "base/macros.h" namespace crashpad { namespace test { @@ -31,6 +30,10 @@ namespace test { class ScopedGuardedPage { public: ScopedGuardedPage(); + + ScopedGuardedPage(const ScopedGuardedPage&) = delete; + ScopedGuardedPage& operator=(const ScopedGuardedPage&) = delete; + ~ScopedGuardedPage(); //! \brief Returns the address of the read-write page. @@ -40,7 +43,6 @@ class ScopedGuardedPage { private: void* ptr_; - DISALLOW_COPY_AND_ASSIGN(ScopedGuardedPage); }; } // namespace test diff --git a/test/scoped_module_handle.h b/test/scoped_module_handle.h index bbab066d..0e96c951 100644 --- a/test/scoped_module_handle.h +++ b/test/scoped_module_handle.h @@ -15,7 +15,6 @@ #ifndef CRASHPAD_TEST_SCOPED_MODULE_HANDLE_H_ #define CRASHPAD_TEST_SCOPED_MODULE_HANDLE_H_ -#include "base/macros.h" #include "build/build_config.h" #if defined(OS_POSIX) @@ -33,6 +32,10 @@ class ScopedModuleHandle { private: class Impl { public: + Impl() = delete; + Impl(const Impl&) = delete; + Impl& operator=(const Impl&) = delete; + #if defined(OS_POSIX) using ModuleHandle = void*; @@ -48,9 +51,6 @@ class ScopedModuleHandle { #endif static void Close(ModuleHandle handle); - - private: - DISALLOW_IMPLICIT_CONSTRUCTORS(Impl); }; public: @@ -58,6 +58,10 @@ class ScopedModuleHandle { explicit ScopedModuleHandle(ModuleHandle handle); ScopedModuleHandle(ScopedModuleHandle&& handle); + + ScopedModuleHandle(const ScopedModuleHandle&) = delete; + ScopedModuleHandle& operator=(const ScopedModuleHandle&) = delete; + ~ScopedModuleHandle(); //! \return The module handle being managed. @@ -75,8 +79,6 @@ class ScopedModuleHandle { private: ModuleHandle handle_; - - DISALLOW_COPY_AND_ASSIGN(ScopedModuleHandle); }; } // namespace test diff --git a/test/scoped_temp_dir.h b/test/scoped_temp_dir.h index a6487580..a1331902 100644 --- a/test/scoped_temp_dir.h +++ b/test/scoped_temp_dir.h @@ -16,7 +16,6 @@ #define CRASHPAD_TEST_SCOPED_TEMP_DIR_ #include "base/files/file_path.h" -#include "base/macros.h" namespace crashpad { namespace test { @@ -29,6 +28,10 @@ namespace test { class ScopedTempDir { public: ScopedTempDir(); + + ScopedTempDir(const ScopedTempDir&) = delete; + ScopedTempDir& operator=(const ScopedTempDir&) = delete; + ~ScopedTempDir(); //! \brief Returns the path of the temporary directory. @@ -54,8 +57,6 @@ class ScopedTempDir { static void RecursivelyDeleteTemporaryDirectory(const base::FilePath& path); base::FilePath path_; - - DISALLOW_COPY_AND_ASSIGN(ScopedTempDir); }; } // namespace test diff --git a/test/test_paths.h b/test/test_paths.h index 89ca4851..72bb1553 100644 --- a/test/test_paths.h +++ b/test/test_paths.h @@ -16,7 +16,6 @@ #define CRASHPAD_TEST_TEST_PATHS_H_ #include "base/files/file_path.h" -#include "base/macros.h" #include "build/build_config.h" namespace crashpad { @@ -60,6 +59,10 @@ class TestPaths { #endif // OS_WIN && ARCH_CPU_64_BITS }; + TestPaths() = delete; + TestPaths(const TestPaths&) = delete; + TestPaths& operator=(const TestPaths&) = delete; + //! \brief Returns the pathname of the currently-running test executable. //! //! On failure, aborts execution. @@ -140,8 +143,6 @@ class TestPaths { //! with Architecture::kDefault. static bool Has32BitBuildArtifacts(); #endif // OS_WIN && ARCH_CPU_64_BITS - - DISALLOW_IMPLICIT_CONSTRUCTORS(TestPaths); }; } // namespace test diff --git a/test/win/win_child_process.h b/test/win/win_child_process.h index a28da65e..a93f3ca8 100644 --- a/test/win/win_child_process.h +++ b/test/win/win_child_process.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" #include "util/file/file_io.h" #include "util/win/scoped_handle.h" @@ -41,6 +40,10 @@ class WinChildProcess { }; WinChildProcess(); + + WinChildProcess(const WinChildProcess&) = delete; + WinChildProcess& operator=(const WinChildProcess&) = delete; + virtual ~WinChildProcess() {} //! \brief Returns true if the current process is a child process. @@ -109,8 +112,6 @@ class WinChildProcess { ScopedFileHANDLE pipe_read_; ScopedFileHANDLE pipe_write_; - - DISALLOW_COPY_AND_ASSIGN(WinChildProcess); }; } // namespace test diff --git a/test/win/win_child_process_test.cc b/test/win/win_child_process_test.cc index eb38ba98..45b2dce5 100644 --- a/test/win/win_child_process_test.cc +++ b/test/win/win_child_process_test.cc @@ -17,7 +17,6 @@ #include #include -#include "base/macros.h" #include "gtest/gtest.h" namespace crashpad { @@ -43,6 +42,9 @@ class TestWinChildProcess final : public WinChildProcess { public: TestWinChildProcess() : WinChildProcess() {} + TestWinChildProcess(const TestWinChildProcess&) = delete; + TestWinChildProcess& operator=(const TestWinChildProcess&) = delete; + ~TestWinChildProcess() {} private: @@ -52,8 +54,6 @@ class TestWinChildProcess final : public WinChildProcess { WriteInt(WritePipeHandle(), value); return testing::Test::HasFailure() ? EXIT_FAILURE : EXIT_SUCCESS; } - - DISALLOW_COPY_AND_ASSIGN(TestWinChildProcess); }; TEST(WinChildProcessTest, WinChildProcess) { diff --git a/test/win/win_multiprocess.h b/test/win/win_multiprocess.h index d145563e..91bee7e2 100644 --- a/test/win/win_multiprocess.h +++ b/test/win/win_multiprocess.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" #include "gtest/gtest.h" #include "test/win/win_child_process.h" #include "util/file/file_io.h" @@ -31,6 +30,9 @@ class WinMultiprocess { public: WinMultiprocess(); + WinMultiprocess(const WinMultiprocess&) = delete; + WinMultiprocess& operator=(const WinMultiprocess&) = delete; + //! \brief Runs the test. //! //! This method establishes the testing environment by respawning the process @@ -127,15 +129,16 @@ class WinMultiprocess { class ChildProcessHelperBase : public WinChildProcess { public: ChildProcessHelperBase() {} + + ChildProcessHelperBase(const ChildProcessHelperBase&) = delete; + ChildProcessHelperBase& operator=(const ChildProcessHelperBase&) = delete; + ~ChildProcessHelperBase() override {} void CloseWritePipeForwarder() { CloseWritePipe(); } void CloseReadPipeForwarder() { CloseReadPipe(); } FileHandle ReadPipeHandleForwarder() const { return ReadPipeHandle(); } FileHandle WritePipeHandleForwarder() const { return WritePipeHandle(); } - - private: - DISALLOW_COPY_AND_ASSIGN(ChildProcessHelperBase); }; // Forwards WinChildProcess::Run to T::WinMultiprocessChild. @@ -143,6 +146,10 @@ class WinMultiprocess { class ChildProcessHelper : public ChildProcessHelperBase { public: ChildProcessHelper() {} + + ChildProcessHelper(const ChildProcessHelper&) = delete; + ChildProcessHelper& operator=(const ChildProcessHelper&) = delete; + ~ChildProcessHelper() override {} private: @@ -154,8 +161,6 @@ class WinMultiprocess { return 255; return EXIT_SUCCESS; } - - DISALLOW_COPY_AND_ASSIGN(ChildProcessHelper); }; //! \brief The subclass-provided parent routine. @@ -197,8 +202,6 @@ class WinMultiprocess { unsigned int exit_code_; WinChildProcess::Handles* child_handles_; ChildProcessHelperBase* child_process_helper_; - - DISALLOW_COPY_AND_ASSIGN(WinMultiprocess); }; } // namespace test diff --git a/test/win/win_multiprocess_test.cc b/test/win/win_multiprocess_test.cc index e1a315e2..60eb9d8d 100644 --- a/test/win/win_multiprocess_test.cc +++ b/test/win/win_multiprocess_test.cc @@ -14,7 +14,6 @@ #include "test/win/win_multiprocess.h" -#include "base/macros.h" #include "gtest/gtest.h" namespace crashpad { @@ -26,6 +25,9 @@ class TestWinMultiprocess final : public WinMultiprocess { public: TestWinMultiprocess() {} + TestWinMultiprocess(const TestWinMultiprocess&) = delete; + TestWinMultiprocess& operator=(const TestWinMultiprocess&) = delete; + private: // WinMultiprocess will have already exercised the pipes. void WinMultiprocessParent() override { SetExpectedChildExitCode(ExitCode); } @@ -33,34 +35,38 @@ class TestWinMultiprocess final : public WinMultiprocess { void WinMultiprocessChild() override { exit(ExitCode); } - - DISALLOW_COPY_AND_ASSIGN(TestWinMultiprocess); }; class TestWinMultiprocessChildAsserts final : public WinMultiprocess { public: TestWinMultiprocessChildAsserts() {} + TestWinMultiprocessChildAsserts(const TestWinMultiprocessChildAsserts&) = + delete; + TestWinMultiprocessChildAsserts& operator=( + const TestWinMultiprocessChildAsserts&) = delete; + private: void WinMultiprocessParent() override { SetExpectedChildExitCode(255); } void WinMultiprocessChild() override { ASSERT_FALSE(true); } - - DISALLOW_COPY_AND_ASSIGN(TestWinMultiprocessChildAsserts); }; class TestWinMultiprocessChildExpects final : public WinMultiprocess { public: TestWinMultiprocessChildExpects() {} + TestWinMultiprocessChildExpects(const TestWinMultiprocessChildExpects&) = + delete; + TestWinMultiprocessChildExpects& operator=( + const TestWinMultiprocessChildExpects&) = delete; + private: void WinMultiprocessParent() override { SetExpectedChildExitCode(255); } void WinMultiprocessChild() override { EXPECT_FALSE(true); } - - DISALLOW_COPY_AND_ASSIGN(TestWinMultiprocessChildExpects); }; TEST(WinMultiprocess, WinMultiprocess) { diff --git a/test/win/win_multiprocess_with_temp_dir.h b/test/win/win_multiprocess_with_temp_dir.h index 6840cc6b..5e47c22a 100644 --- a/test/win/win_multiprocess_with_temp_dir.h +++ b/test/win/win_multiprocess_with_temp_dir.h @@ -22,7 +22,6 @@ #include #include "base/files/file_path.h" -#include "base/macros.h" #include "test/scoped_temp_dir.h" #include "test/win/win_multiprocess.h" @@ -40,6 +39,10 @@ class WinMultiprocessWithTempDir : public WinMultiprocess { public: WinMultiprocessWithTempDir(); + WinMultiprocessWithTempDir(const WinMultiprocessWithTempDir&) = delete; + WinMultiprocessWithTempDir& operator=(const WinMultiprocessWithTempDir&) = + delete; + protected: void WinMultiprocessParentBeforeChild() override; void WinMultiprocessParentAfterChild(HANDLE child) override; @@ -51,6 +54,11 @@ class WinMultiprocessWithTempDir : public WinMultiprocess { class ScopedEnvironmentVariable { public: explicit ScopedEnvironmentVariable(const wchar_t* name); + + ScopedEnvironmentVariable(const ScopedEnvironmentVariable&) = delete; + ScopedEnvironmentVariable& operator=(const ScopedEnvironmentVariable&) = + delete; + ~ScopedEnvironmentVariable(); std::wstring GetValue() const; @@ -65,14 +73,10 @@ class WinMultiprocessWithTempDir : public WinMultiprocess { std::wstring original_value_; const wchar_t* name_; bool was_defined_; - - DISALLOW_COPY_AND_ASSIGN(ScopedEnvironmentVariable); }; std::unique_ptr temp_dir_; ScopedEnvironmentVariable temp_dir_env_; - - DISALLOW_COPY_AND_ASSIGN(WinMultiprocessWithTempDir); }; } // namespace test diff --git a/tools/mac/exception_port_tool.cc b/tools/mac/exception_port_tool.cc index 9e977b40..2fdc5800 100644 --- a/tools/mac/exception_port_tool.cc +++ b/tools/mac/exception_port_tool.cc @@ -27,7 +27,6 @@ #include "base/mac/mach_logging.h" #include "base/mac/scoped_mach_port.h" -#include "base/macros.h" #include "tools/tool_support.h" #include "util/mach/bootstrap.h" #include "util/mach/exception_ports.h" @@ -65,6 +64,9 @@ class MachSendRightPool { : send_rights_() { } + MachSendRightPool(const MachSendRightPool&) = delete; + MachSendRightPool& operator=(const MachSendRightPool&) = delete; + ~MachSendRightPool() { for (mach_port_t send_right : send_rights_) { kern_return_t kr = mach_port_deallocate(mach_task_self(), send_right); @@ -94,8 +96,6 @@ class MachSendRightPool { private: std::vector send_rights_; - - DISALLOW_COPY_AND_ASSIGN(MachSendRightPool); }; struct ExceptionHandlerDescription { diff --git a/tools/tool_support.h b/tools/tool_support.h index 48f412f3..fd4955e4 100644 --- a/tools/tool_support.h +++ b/tools/tool_support.h @@ -18,7 +18,6 @@ #include #include "base/files/file_path.h" -#include "base/macros.h" #include "base/strings/string_piece.h" #include "build/build_config.h" @@ -27,6 +26,10 @@ namespace crashpad { //! \brief Common functions used by command line tools. class ToolSupport { public: + ToolSupport() = delete; + ToolSupport(const ToolSupport&) = delete; + ToolSupport& operator=(const ToolSupport&) = delete; + //! \brief Handles `--version`. //! //! \param[in] me The tool’s name, the basename of `argv[0]`. @@ -83,9 +86,6 @@ class ToolSupport { //! Wmain(). static std::string FilePathToCommandLineArgument( const base::FilePath& file_path); - - private: - DISALLOW_IMPLICIT_CONSTRUCTORS(ToolSupport); }; } // namespace crashpad diff --git a/util/file/delimited_file_reader.h b/util/file/delimited_file_reader.h index 93fd7380..16bef256 100644 --- a/util/file/delimited_file_reader.h +++ b/util/file/delimited_file_reader.h @@ -19,7 +19,6 @@ #include -#include "base/macros.h" #include "util/file/file_reader.h" namespace crashpad { @@ -51,6 +50,10 @@ class DelimitedFileReader { }; explicit DelimitedFileReader(FileReaderInterface* file_reader); + + DelimitedFileReader(const DelimitedFileReader&) = delete; + DelimitedFileReader& operator=(const DelimitedFileReader&) = delete; + ~DelimitedFileReader(); //! \brief Reads a single field from the file. @@ -84,8 +87,6 @@ class DelimitedFileReader { uint16_t buf_pos_; // Index into buf_ of the start of the next field. uint16_t buf_len_; // The size of buf_ that’s been filled. bool eof_; // Caches the EOF signal when detected following a partial field. - - DISALLOW_COPY_AND_ASSIGN(DelimitedFileReader); }; } // namespace crashpad diff --git a/util/file/directory_reader.h b/util/file/directory_reader.h index d3976929..096d120d 100644 --- a/util/file/directory_reader.h +++ b/util/file/directory_reader.h @@ -16,7 +16,6 @@ #define CRASHPAD_UTIL_FILE_DIRECTORY_READER_H_ #include "base/files/file_path.h" -#include "base/macros.h" #include "build/build_config.h" #if defined(OS_POSIX) @@ -48,6 +47,10 @@ class DirectoryReader { }; DirectoryReader(); + + DirectoryReader(const DirectoryReader&) = delete; + DirectoryReader& operator=(const DirectoryReader&) = delete; + ~DirectoryReader(); //! \brief Opens the directory specified by \a path for reading. @@ -78,8 +81,6 @@ class DirectoryReader { ScopedSearchHANDLE handle_; bool first_entry_; #endif // OS_POSIX - - DISALLOW_COPY_AND_ASSIGN(DirectoryReader); }; } // namespace crashpad diff --git a/util/file/file_io.cc b/util/file/file_io.cc index 3bd86cc4..48da6383 100644 --- a/util/file/file_io.cc +++ b/util/file/file_io.cc @@ -16,7 +16,6 @@ #include "base/check_op.h" #include "base/logging.h" -#include "base/macros.h" #include "base/numerics/safe_conversions.h" namespace crashpad { @@ -27,6 +26,10 @@ class FileIOReadExactly final : public internal::ReadExactlyInternal { public: explicit FileIOReadExactly(FileHandle file) : ReadExactlyInternal(), file_(file) {} + + FileIOReadExactly(const FileIOReadExactly&) = delete; + FileIOReadExactly& operator=(const FileIOReadExactly&) = delete; + ~FileIOReadExactly() {} private: @@ -41,13 +44,15 @@ class FileIOReadExactly final : public internal::ReadExactlyInternal { } FileHandle file_; - - DISALLOW_COPY_AND_ASSIGN(FileIOReadExactly); }; class FileIOWriteAll final : public internal::WriteAllInternal { public: explicit FileIOWriteAll(FileHandle file) : WriteAllInternal(), file_(file) {} + + FileIOWriteAll(const FileIOWriteAll&) = delete; + FileIOWriteAll& operator=(const FileIOWriteAll&) = delete; + ~FileIOWriteAll() {} private: @@ -57,8 +62,6 @@ class FileIOWriteAll final : public internal::WriteAllInternal { } FileHandle file_; - - DISALLOW_COPY_AND_ASSIGN(FileIOWriteAll); }; } // namespace diff --git a/util/file/file_io.h b/util/file/file_io.h index 3b6d7679..526debdd 100644 --- a/util/file/file_io.h +++ b/util/file/file_io.h @@ -164,6 +164,9 @@ constexpr char kNativeWriteFunctionName[] = "WriteFile"; //! FileReaderInterface::ReadExactly() instead. class ReadExactlyInternal { public: + ReadExactlyInternal(const ReadExactlyInternal&) = delete; + ReadExactlyInternal& operator=(const ReadExactlyInternal&) = delete; + //! \brief Calls Read(), retrying following a short read, ensuring that //! exactly \a size bytes are read. //! @@ -182,8 +185,6 @@ class ReadExactlyInternal { //! \return The number of bytes read and placed into \a buffer, or `-1` on //! error. When returning `-1`, if \a can_log is `true`, logs a message. virtual FileOperationResult Read(void* buffer, size_t size, bool can_log) = 0; - - DISALLOW_COPY_AND_ASSIGN(ReadExactlyInternal); }; //! \brief The internal implementation of WriteFile() and its wrappers. @@ -194,6 +195,9 @@ class ReadExactlyInternal { //! FileWriterInterface::Write() instead. class WriteAllInternal { public: + WriteAllInternal(const WriteAllInternal&) = delete; + WriteAllInternal& operator=(const WriteAllInternal&) = delete; + //! \brief Calls Write(), retrying following a short write, ensuring that //! exactly \a size bytes are written. //! @@ -210,8 +214,6 @@ class WriteAllInternal { //! //! \return The number of bytes written from \a buffer, or `-1` on error. virtual FileOperationResult Write(const void* buffer, size_t size) = 0; - - DISALLOW_COPY_AND_ASSIGN(WriteAllInternal); }; //! \brief Writes to a file, retrying when interrupted on POSIX. diff --git a/util/file/file_io_test.cc b/util/file/file_io_test.cc index fc618575..abfef129 100644 --- a/util/file/file_io_test.cc +++ b/util/file/file_io_test.cc @@ -22,7 +22,6 @@ #include "base/atomicops.h" #include "base/cxx17_backports.h" #include "base/files/file_path.h" -#include "base/macros.h" #include "gmock/gmock.h" #include "gtest/gtest.h" #include "test/errors.h" @@ -42,6 +41,10 @@ using testing::Return; class MockReadExactly : public internal::ReadExactlyInternal { public: MockReadExactly() : ReadExactlyInternal() {} + + MockReadExactly(const MockReadExactly&) = delete; + MockReadExactly& operator=(const MockReadExactly&) = delete; + ~MockReadExactly() {} // Since it’s more convenient for the test to use uintptr_t than void*, @@ -57,9 +60,6 @@ class MockReadExactly : public internal::ReadExactlyInternal { FileOperationResult Read(void* data, size_t size, bool can_log) { return ReadInt(reinterpret_cast(data), size, can_log); } - - private: - DISALLOW_COPY_AND_ASSIGN(MockReadExactly); }; TEST(FileIO, ReadExactly_Zero) { @@ -239,6 +239,10 @@ TEST(FileIO, ReadExactly_TripleMax) { class MockWriteAll : public internal::WriteAllInternal { public: MockWriteAll() : WriteAllInternal() {} + + MockWriteAll(const MockWriteAll&) = delete; + MockWriteAll& operator=(const MockWriteAll&) = delete; + ~MockWriteAll() {} // Since it’s more convenient for the test to use uintptr_t than const void*, @@ -254,9 +258,6 @@ class MockWriteAll : public internal::WriteAllInternal { FileOperationResult Write(const void* data, size_t size) { return WriteInt(reinterpret_cast(data), size); } - - private: - DISALLOW_COPY_AND_ASSIGN(MockWriteAll); }; TEST(FileIO, WriteAll_Zero) { @@ -582,6 +583,9 @@ class LockingTestThread : public Thread { LockingTestThread() : file_(), lock_type_(), iterations_(), actual_iterations_() {} + LockingTestThread(const LockingTestThread&) = delete; + LockingTestThread& operator=(const LockingTestThread&) = delete; + void Init(FileHandle file, FileLocking lock_type, int iterations, @@ -608,8 +612,6 @@ class LockingTestThread : public Thread { FileLocking lock_type_; int iterations_; base::subtle::Atomic32* actual_iterations_; - - DISALLOW_COPY_AND_ASSIGN(LockingTestThread); }; void LockingTest(FileLocking main_lock, FileLocking other_locks) { diff --git a/util/file/file_reader.cc b/util/file/file_reader.cc index 6f272f01..f22bd7ec 100644 --- a/util/file/file_reader.cc +++ b/util/file/file_reader.cc @@ -26,6 +26,10 @@ class FileReaderReadExactly final : public internal::ReadExactlyInternal { public: explicit FileReaderReadExactly(FileReaderInterface* file_reader) : ReadExactlyInternal(), file_reader_(file_reader) {} + + FileReaderReadExactly(const FileReaderReadExactly&) = delete; + FileReaderReadExactly& operator=(const FileReaderReadExactly&) = delete; + ~FileReaderReadExactly() {} private: @@ -36,8 +40,6 @@ class FileReaderReadExactly final : public internal::ReadExactlyInternal { } FileReaderInterface* file_reader_; // weak - - DISALLOW_COPY_AND_ASSIGN(FileReaderReadExactly); }; } // namespace diff --git a/util/file/file_reader.h b/util/file/file_reader.h index d44be1c1..f24366c1 100644 --- a/util/file/file_reader.h +++ b/util/file/file_reader.h @@ -18,7 +18,6 @@ #include #include "base/files/file_path.h" -#include "base/macros.h" #include "util/file/file_io.h" #include "util/file/file_seeker.h" @@ -65,6 +64,10 @@ class FileReaderInterface : public virtual FileSeekerInterface { class WeakFileHandleFileReader : public FileReaderInterface { public: explicit WeakFileHandleFileReader(FileHandle file_handle); + + WeakFileHandleFileReader(const WeakFileHandleFileReader&) = delete; + WeakFileHandleFileReader& operator=(const WeakFileHandleFileReader&) = delete; + ~WeakFileHandleFileReader() override; // FileReaderInterface: @@ -89,8 +92,6 @@ class WeakFileHandleFileReader : public FileReaderInterface { // construction because no file descriptor will be available until // FileReader::Open() is called. friend class FileReader; - - DISALLOW_COPY_AND_ASSIGN(WeakFileHandleFileReader); }; //! \brief A file reader implementation that wraps traditional system file @@ -98,6 +99,10 @@ class WeakFileHandleFileReader : public FileReaderInterface { class FileReader : public FileReaderInterface { public: FileReader(); + + FileReader(const FileReader&) = delete; + FileReader& operator=(const FileReader&) = delete; + ~FileReader() override; // FileReaderInterface: @@ -137,8 +142,6 @@ class FileReader : public FileReaderInterface { private: ScopedFileHandle file_; WeakFileHandleFileReader weak_file_handle_file_reader_; - - DISALLOW_COPY_AND_ASSIGN(FileReader); }; } // namespace crashpad diff --git a/util/file/file_reader_test.cc b/util/file/file_reader_test.cc index ea2dd355..bda1a3b4 100644 --- a/util/file/file_reader_test.cc +++ b/util/file/file_reader_test.cc @@ -33,6 +33,10 @@ using testing::Return; class MockFileReader : public FileReaderInterface { public: MockFileReader() : FileReaderInterface() {} + + MockFileReader(const MockFileReader&) = delete; + MockFileReader& operator=(const MockFileReader&) = delete; + ~MockFileReader() override {} // Since it’s more convenient for the test to use uintptr_t than void*, @@ -51,9 +55,6 @@ class MockFileReader : public FileReaderInterface { // FileSeekerInterface: MOCK_METHOD(FileOffset, Seek, (FileOffset, int), (override)); - - private: - DISALLOW_COPY_AND_ASSIGN(MockFileReader); }; TEST(FileReader, ReadExactly_Zero) { diff --git a/util/file/file_writer.h b/util/file/file_writer.h index 987c0f59..4ba7a438 100644 --- a/util/file/file_writer.h +++ b/util/file/file_writer.h @@ -20,7 +20,6 @@ #include #include "base/files/file_path.h" -#include "base/macros.h" #include "util/file/file_io.h" #include "util/file/file_seeker.h" @@ -82,6 +81,10 @@ class FileWriterInterface : public virtual FileSeekerInterface { class WeakFileHandleFileWriter : public FileWriterInterface { public: explicit WeakFileHandleFileWriter(FileHandle file_handle); + + WeakFileHandleFileWriter(const WeakFileHandleFileWriter&) = delete; + WeakFileHandleFileWriter& operator=(const WeakFileHandleFileWriter&) = delete; + ~WeakFileHandleFileWriter() override; // FileWriterInterface: @@ -107,8 +110,6 @@ class WeakFileHandleFileWriter : public FileWriterInterface { // construction because no file descriptor will be available until // FileWriter::Open() is called. friend class FileWriter; - - DISALLOW_COPY_AND_ASSIGN(WeakFileHandleFileWriter); }; //! \brief A file writer implementation that wraps traditional system file @@ -116,6 +117,10 @@ class WeakFileHandleFileWriter : public FileWriterInterface { class FileWriter : public FileWriterInterface { public: FileWriter(); + + FileWriter(const FileWriter&) = delete; + FileWriter& operator=(const FileWriter&) = delete; + ~FileWriter() override; // FileWriterInterface: @@ -179,8 +184,6 @@ class FileWriter : public FileWriterInterface { private: ScopedFileHandle file_; WeakFileHandleFileWriter weak_file_handle_file_writer_; - - DISALLOW_COPY_AND_ASSIGN(FileWriter); }; } // namespace crashpad diff --git a/util/file/output_stream_file_writer.h b/util/file/output_stream_file_writer.h index 6bf1c2c1..60965f92 100644 --- a/util/file/output_stream_file_writer.h +++ b/util/file/output_stream_file_writer.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" #include "util/file/file_writer.h" namespace crashpad { @@ -31,6 +30,10 @@ class OutputStreamFileWriter : public FileWriterInterface { //! \param[in] output_stream The output stream that this object writes to. explicit OutputStreamFileWriter( std::unique_ptr output_stream); + + OutputStreamFileWriter(const OutputStreamFileWriter&) = delete; + OutputStreamFileWriter& operator=(const OutputStreamFileWriter&) = delete; + ~OutputStreamFileWriter() override; // FileWriterInterface: @@ -53,8 +56,6 @@ class OutputStreamFileWriter : public FileWriterInterface { std::unique_ptr output_stream_; bool flush_needed_; bool flushed_; - - DISALLOW_COPY_AND_ASSIGN(OutputStreamFileWriter); }; } // namespace crashpad diff --git a/util/file/string_file.h b/util/file/string_file.h index 313310e6..bd689874 100644 --- a/util/file/string_file.h +++ b/util/file/string_file.h @@ -19,7 +19,6 @@ #include -#include "base/macros.h" #include "base/numerics/safe_math.h" #include "util/file/file_io.h" #include "util/file/file_reader.h" @@ -37,6 +36,10 @@ namespace crashpad { class StringFile : public FileReaderInterface, public FileWriterInterface { public: StringFile(); + + StringFile(const StringFile&) = delete; + StringFile& operator=(const StringFile&) = delete; + ~StringFile() override; //! \brief Returns a string containing the virtual file’s contents. @@ -72,8 +75,6 @@ class StringFile : public FileReaderInterface, public FileWriterInterface { //! report file offsets. The implementation must take care when converting //! between these distinct types. base::CheckedNumeric offset_; - - DISALLOW_COPY_AND_ASSIGN(StringFile); }; } // namespace crashpad diff --git a/util/fuchsia/scoped_task_suspend.h b/util/fuchsia/scoped_task_suspend.h index afe497bc..49a73cf5 100644 --- a/util/fuchsia/scoped_task_suspend.h +++ b/util/fuchsia/scoped_task_suspend.h @@ -21,7 +21,6 @@ #include -#include "base/macros.h" namespace crashpad { @@ -36,12 +35,14 @@ namespace crashpad { class ScopedTaskSuspend { public: explicit ScopedTaskSuspend(const zx::process& process); + + ScopedTaskSuspend(const ScopedTaskSuspend&) = delete; + ScopedTaskSuspend& operator=(const ScopedTaskSuspend&) = delete; + ~ScopedTaskSuspend() = default; private: zx::suspend_token suspend_token_; - - DISALLOW_COPY_AND_ASSIGN(ScopedTaskSuspend); }; } // namespace crashpad diff --git a/util/ios/ios_intermediate_dump_data.h b/util/ios/ios_intermediate_dump_data.h index def5ab9c..c2613e90 100644 --- a/util/ios/ios_intermediate_dump_data.h +++ b/util/ios/ios_intermediate_dump_data.h @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" #include "util/ios/ios_intermediate_dump_object.h" namespace crashpad { @@ -28,6 +27,10 @@ namespace internal { class IOSIntermediateDumpData : public IOSIntermediateDumpObject { public: IOSIntermediateDumpData(); + + IOSIntermediateDumpData(const IOSIntermediateDumpData&) = delete; + IOSIntermediateDumpData& operator=(const IOSIntermediateDumpData&) = delete; + ~IOSIntermediateDumpData() override; //! \brief Constructs a new data object which owns a std::vector. @@ -58,8 +61,6 @@ class IOSIntermediateDumpData : public IOSIntermediateDumpObject { bool GetValueInternal(void* value, size_t value_size) const; std::vector data_; - - DISALLOW_COPY_AND_ASSIGN(IOSIntermediateDumpData); }; } // namespace internal diff --git a/util/ios/ios_intermediate_dump_list.h b/util/ios/ios_intermediate_dump_list.h index 42d1ef29..e2ad9253 100644 --- a/util/ios/ios_intermediate_dump_list.h +++ b/util/ios/ios_intermediate_dump_list.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" #include "util/ios/ios_intermediate_dump_map.h" #include "util/ios/ios_intermediate_dump_object.h" @@ -30,6 +29,10 @@ namespace internal { class IOSIntermediateDumpList : public IOSIntermediateDumpObject { public: IOSIntermediateDumpList(); + + IOSIntermediateDumpList(const IOSIntermediateDumpList&) = delete; + IOSIntermediateDumpList& operator=(const IOSIntermediateDumpList&) = delete; + ~IOSIntermediateDumpList() override; // IOSIntermediateDumpObject: @@ -45,8 +48,6 @@ class IOSIntermediateDumpList : public IOSIntermediateDumpObject { private: VectorType list_; - - DISALLOW_COPY_AND_ASSIGN(IOSIntermediateDumpList); }; } // namespace internal diff --git a/util/ios/ios_intermediate_dump_map.h b/util/ios/ios_intermediate_dump_map.h index a11d6a63..ca26cb37 100644 --- a/util/ios/ios_intermediate_dump_map.h +++ b/util/ios/ios_intermediate_dump_map.h @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" #include "util/ios/ios_intermediate_dump_format.h" #include "util/ios/ios_intermediate_dump_object.h" @@ -34,6 +33,10 @@ class IOSIntermediateDumpData; class IOSIntermediateDumpMap : public IOSIntermediateDumpObject { public: IOSIntermediateDumpMap(); + + IOSIntermediateDumpMap(const IOSIntermediateDumpMap&) = delete; + IOSIntermediateDumpMap& operator=(const IOSIntermediateDumpMap&) = delete; + ~IOSIntermediateDumpMap() override; // IOSIntermediateDumpObject: @@ -60,8 +63,6 @@ class IOSIntermediateDumpMap : public IOSIntermediateDumpObject { friend class IOSIntermediateDumpReader; std::map> map_; - - DISALLOW_COPY_AND_ASSIGN(IOSIntermediateDumpMap); }; } // namespace internal diff --git a/util/ios/ios_intermediate_dump_object.h b/util/ios/ios_intermediate_dump_object.h index 21ccd297..fde7e1e4 100644 --- a/util/ios/ios_intermediate_dump_object.h +++ b/util/ios/ios_intermediate_dump_object.h @@ -15,7 +15,6 @@ #ifndef CRASHPAD_UTIL_IOS_IOS_INTERMEDIATE_DUMP_OBJECT_H_ #define CRASHPAD_UTIL_IOS_IOS_INTERMEDIATE_DUMP_OBJECT_H_ -#include "base/macros.h" #include "util/ios/ios_intermediate_dump_writer.h" namespace crashpad { @@ -25,6 +24,11 @@ namespace internal { class IOSIntermediateDumpObject { public: IOSIntermediateDumpObject(); + + IOSIntermediateDumpObject(const IOSIntermediateDumpObject&) = delete; + IOSIntermediateDumpObject& operator=(const IOSIntermediateDumpObject&) = + delete; + virtual ~IOSIntermediateDumpObject(); //! \brief The type of object stored in the intermediate dump. . @@ -41,8 +45,6 @@ class IOSIntermediateDumpObject { //! \brief Returns a type. virtual Type GetType() const = 0; - - DISALLOW_COPY_AND_ASSIGN(IOSIntermediateDumpObject); }; } // namespace internal diff --git a/util/ios/ios_intermediate_dump_reader.h b/util/ios/ios_intermediate_dump_reader.h index 2966e7c9..e1c42172 100644 --- a/util/ios/ios_intermediate_dump_reader.h +++ b/util/ios/ios_intermediate_dump_reader.h @@ -16,7 +16,6 @@ #define CRASHPAD_UTIL_IOS_IOS_INTERMEDIATE_DUMP_READER_H_ #include "base/files/file_path.h" -#include "base/macros.h" #include "util/file/file_reader.h" #include "util/ios/ios_intermediate_dump_map.h" @@ -28,6 +27,10 @@ class IOSIntermediateDumpReader { public: IOSIntermediateDumpReader() {} + IOSIntermediateDumpReader(const IOSIntermediateDumpReader&) = delete; + IOSIntermediateDumpReader& operator=(const IOSIntermediateDumpReader&) = + delete; + //! \brief Open and parses \a path, ignoring empty files. //! //! Will attempt to parse the binary file, similar to a JSON file, using the @@ -48,8 +51,6 @@ class IOSIntermediateDumpReader { private: bool Parse(FileReaderInterface* reader, FileOffset file_size); IOSIntermediateDumpMap minidump_; - - DISALLOW_COPY_AND_ASSIGN(IOSIntermediateDumpReader); }; } // namespace internal diff --git a/util/ios/ios_intermediate_dump_writer.h b/util/ios/ios_intermediate_dump_writer.h index 0f8b1b7d..836fbe7a 100644 --- a/util/ios/ios_intermediate_dump_writer.h +++ b/util/ios/ios_intermediate_dump_writer.h @@ -16,7 +16,6 @@ #define CRASHPAD_UTIL_IOS_IOS_INTERMEDIATE_DUMP_WRITER_H_ #include "base/files/file_path.h" -#include "base/macros.h" #include "util/ios/ios_intermediate_dump_format.h" namespace crashpad { @@ -42,6 +41,10 @@ class IOSIntermediateDumpWriter final { public: IOSIntermediateDumpWriter() = default; + IOSIntermediateDumpWriter(const IOSIntermediateDumpWriter&) = delete; + IOSIntermediateDumpWriter& operator=(const IOSIntermediateDumpWriter&) = + delete; + //! \brief Command instructions for the intermediate dump reader. enum class CommandType : uint8_t { //! \brief Indicates a new map, followed by associated key. @@ -88,11 +91,14 @@ class IOSIntermediateDumpWriter final { : writer_(writer) { writer->RootMapStart(); } + + ScopedRootMap(const ScopedRootMap&) = delete; + ScopedRootMap& operator=(const ScopedRootMap&) = delete; + ~ScopedRootMap() { writer_->RootMapEnd(); } private: IOSIntermediateDumpWriter* writer_; - DISALLOW_COPY_AND_ASSIGN(ScopedRootMap); }; //! \brief A scoped wrapper for calls to MapStart and MapEnd. @@ -103,11 +109,14 @@ class IOSIntermediateDumpWriter final { : writer_(writer) { writer->MapStart(key); } + + ScopedMap(const ScopedMap&) = delete; + ScopedMap& operator=(const ScopedMap&) = delete; + ~ScopedMap() { writer_->MapEnd(); } private: IOSIntermediateDumpWriter* writer_; - DISALLOW_COPY_AND_ASSIGN(ScopedMap); }; //! \brief A scoped wrapper for calls to ArrayMapStart and MapEnd. @@ -117,11 +126,14 @@ class IOSIntermediateDumpWriter final { : writer_(writer) { writer->ArrayMapStart(); } + + ScopedArrayMap(const ScopedArrayMap&) = delete; + ScopedArrayMap& operator=(const ScopedArrayMap&) = delete; + ~ScopedArrayMap() { writer_->MapEnd(); } private: IOSIntermediateDumpWriter* writer_; - DISALLOW_COPY_AND_ASSIGN(ScopedArrayMap); }; //! \brief A scoped wrapper for calls to ArrayStart and ArrayEnd. @@ -132,11 +144,14 @@ class IOSIntermediateDumpWriter final { : writer_(writer) { writer->ArrayStart(key); } + + ScopedArray(const ScopedArray&) = delete; + ScopedArray& operator=(const ScopedArray&) = delete; + ~ScopedArray() { writer_->ArrayEnd(); } private: IOSIntermediateDumpWriter* writer_; - DISALLOW_COPY_AND_ASSIGN(ScopedArray); }; //! \return The `true` if able to AddPropertyInternal the \a key \a value @@ -187,8 +202,6 @@ class IOSIntermediateDumpWriter final { bool RootMapEnd(); int fd_; - - DISALLOW_COPY_AND_ASSIGN(IOSIntermediateDumpWriter); }; } // namespace internal diff --git a/util/ios/scoped_vm_read.h b/util/ios/scoped_vm_read.h index 3f396d45..3fa1249c 100644 --- a/util/ios/scoped_vm_read.h +++ b/util/ios/scoped_vm_read.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" namespace crashpad { namespace internal { @@ -28,6 +27,10 @@ namespace internal { class ScopedVMReadInternal { public: ScopedVMReadInternal(); + + ScopedVMReadInternal(const ScopedVMReadInternal&) = delete; + ScopedVMReadInternal& operator=(const ScopedVMReadInternal&) = delete; + ~ScopedVMReadInternal(); //! \brief Releases any previously read data and vm_reads \a data. Logs an @@ -51,8 +54,6 @@ class ScopedVMReadInternal { // The size of the pages that were actually read. mach_msg_type_number_t vm_read_data_count_; - - DISALLOW_COPY_AND_ASSIGN(ScopedVMReadInternal); }; //! \brief A scoped wrapper for calls to `vm_read` and `vm_deallocate`. Allows @@ -63,6 +64,10 @@ template class ScopedVMRead { public: ScopedVMRead() : internal_() {} + + ScopedVMRead(const ScopedVMRead&) = delete; + ScopedVMRead& operator=(const ScopedVMRead&) = delete; + ~ScopedVMRead() {} //! \brief Releases any previously read data and vm_reads data. @@ -96,7 +101,6 @@ class ScopedVMRead { private: ScopedVMReadInternal internal_; - DISALLOW_COPY_AND_ASSIGN(ScopedVMRead); }; } // namespace internal diff --git a/util/linux/auxiliary_vector.h b/util/linux/auxiliary_vector.h index a6a44c48..63a11543 100644 --- a/util/linux/auxiliary_vector.h +++ b/util/linux/auxiliary_vector.h @@ -20,7 +20,6 @@ #include #include "base/logging.h" -#include "base/macros.h" #include "util/linux/ptrace_connection.h" #include "util/misc/reinterpret_bytes.h" @@ -30,6 +29,10 @@ namespace crashpad { class AuxiliaryVector { public: AuxiliaryVector(); + + AuxiliaryVector(const AuxiliaryVector&) = delete; + AuxiliaryVector& operator=(const AuxiliaryVector&) = delete; + ~AuxiliaryVector(); //! \brief Initializes this object with the auxiliary vector for the process @@ -65,8 +68,6 @@ class AuxiliaryVector { private: template bool Read(PtraceConnection* connection); - - DISALLOW_COPY_AND_ASSIGN(AuxiliaryVector); }; } // namespace crashpad diff --git a/util/linux/auxiliary_vector_test.cc b/util/linux/auxiliary_vector_test.cc index 2f6c9422..75c20d1a 100644 --- a/util/linux/auxiliary_vector_test.cc +++ b/util/linux/auxiliary_vector_test.cc @@ -21,7 +21,6 @@ #include #include "base/bit_cast.h" -#include "base/macros.h" #include "build/build_config.h" #include "gtest/gtest.h" #include "test/errors.h" @@ -151,14 +150,16 @@ TEST(AuxiliaryVector, ReadSelf) { class ReadChildTest : public Multiprocess { public: ReadChildTest() : Multiprocess() {} + + ReadChildTest(const ReadChildTest&) = delete; + ReadChildTest& operator=(const ReadChildTest&) = delete; + ~ReadChildTest() {} private: void MultiprocessParent() override { TestAgainstCloneOrSelf(ChildPID()); } void MultiprocessChild() override { CheckedReadFileAtEOF(ReadPipeHandle()); } - - DISALLOW_COPY_AND_ASSIGN(ReadChildTest); }; TEST(AuxiliaryVector, ReadChild) { diff --git a/util/linux/direct_ptrace_connection.h b/util/linux/direct_ptrace_connection.h index 99ad233a..a120889a 100644 --- a/util/linux/direct_ptrace_connection.h +++ b/util/linux/direct_ptrace_connection.h @@ -20,7 +20,6 @@ #include #include -#include "base/macros.h" #include "util/linux/ptrace_connection.h" #include "util/linux/ptracer.h" #include "util/linux/scoped_ptrace_attach.h" @@ -36,6 +35,10 @@ namespace crashpad { class DirectPtraceConnection : public PtraceConnection { public: DirectPtraceConnection(); + + DirectPtraceConnection(const DirectPtraceConnection&) = delete; + DirectPtraceConnection& operator=(const DirectPtraceConnection&) = delete; + ~DirectPtraceConnection(); //! \brief Initializes this connection for the process whose process ID is @@ -65,8 +68,6 @@ class DirectPtraceConnection : public PtraceConnection { pid_t pid_; Ptracer ptracer_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(DirectPtraceConnection); }; } // namespace crashpad diff --git a/util/linux/exception_handler_client.cc b/util/linux/exception_handler_client.cc index 98edb306..608a199c 100644 --- a/util/linux/exception_handler_client.cc +++ b/util/linux/exception_handler_client.cc @@ -46,6 +46,9 @@ class ScopedSigprocmaskRestore { DPLOG_IF(ERROR, !mask_is_set_) << "sigprocmask"; } + ScopedSigprocmaskRestore(const ScopedSigprocmaskRestore&) = delete; + ScopedSigprocmaskRestore& operator=(const ScopedSigprocmaskRestore&) = delete; + ~ScopedSigprocmaskRestore() { if (mask_is_set_ && sys_sigprocmask(SIG_SETMASK, &orig_mask_, nullptr) != 0) { @@ -56,8 +59,6 @@ class ScopedSigprocmaskRestore { private: kernel_sigset_t orig_mask_; bool mask_is_set_; - - DISALLOW_COPY_AND_ASSIGN(ScopedSigprocmaskRestore); }; } // namespace diff --git a/util/linux/exception_handler_client.h b/util/linux/exception_handler_client.h index 4e10fa62..7b28bd48 100644 --- a/util/linux/exception_handler_client.h +++ b/util/linux/exception_handler_client.h @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" #include "util/linux/exception_handler_protocol.h" namespace crashpad { @@ -33,6 +32,9 @@ class ExceptionHandlerClient { //! clients. ExceptionHandlerClient(int sock, bool multiple_clients); + ExceptionHandlerClient(const ExceptionHandlerClient&) = delete; + ExceptionHandlerClient& operator=(const ExceptionHandlerClient&) = delete; + ~ExceptionHandlerClient(); //! \brief Communicates with the handler to determine its credentials. @@ -78,8 +80,6 @@ class ExceptionHandlerClient { pid_t ptracer_; bool can_set_ptracer_; bool multiple_clients_; - - DISALLOW_COPY_AND_ASSIGN(ExceptionHandlerClient); }; } // namespace crashpad diff --git a/util/linux/exception_handler_protocol.h b/util/linux/exception_handler_protocol.h index 60b0b1b7..cbd24418 100644 --- a/util/linux/exception_handler_protocol.h +++ b/util/linux/exception_handler_protocol.h @@ -20,7 +20,6 @@ #include #include -#include "base/macros.h" #include "build/build_config.h" #include "util/file/file_io.h" #include "util/misc/address_types.h" @@ -124,9 +123,11 @@ class ExceptionHandlerProtocol { pid_t pid; }; -#pragma pack(pop) + ExceptionHandlerProtocol() = delete; + ExceptionHandlerProtocol(const ExceptionHandlerProtocol&) = delete; + ExceptionHandlerProtocol& operator=(const ExceptionHandlerProtocol&) = delete; - DISALLOW_IMPLICIT_CONSTRUCTORS(ExceptionHandlerProtocol); +#pragma pack(pop) }; } // namespace crashpad diff --git a/util/linux/memory_map.cc b/util/linux/memory_map.cc index 0890cd61..dabc114d 100644 --- a/util/linux/memory_map.cc +++ b/util/linux/memory_map.cc @@ -190,6 +190,9 @@ class SparseReverseIterator : public MemoryMap::Iterator { SparseReverseIterator() : mappings_(), riter_(mappings_.rend()) {} + SparseReverseIterator(const SparseReverseIterator&) = delete; + SparseReverseIterator& operator=(const SparseReverseIterator&) = delete; + // Iterator: const MemoryMap::Mapping* Next() override { return riter_ == mappings_.rend() ? nullptr : *(riter_++); @@ -200,8 +203,6 @@ class SparseReverseIterator : public MemoryMap::Iterator { private: std::vector mappings_; std::vector::reverse_iterator riter_; - - DISALLOW_COPY_AND_ASSIGN(SparseReverseIterator); }; class FullReverseIterator : public MemoryMap::Iterator { @@ -211,6 +212,9 @@ class FullReverseIterator : public MemoryMap::Iterator { std::vector::const_reverse_iterator rend) : riter_(rbegin), rend_(rend) {} + FullReverseIterator(const FullReverseIterator&) = delete; + FullReverseIterator& operator=(const FullReverseIterator&) = delete; + // Iterator: const MemoryMap::Mapping* Next() override { return riter_ == rend_ ? nullptr : &*riter_++; @@ -221,8 +225,6 @@ class FullReverseIterator : public MemoryMap::Iterator { private: std::vector::const_reverse_iterator riter_; std::vector::const_reverse_iterator rend_; - - DISALLOW_COPY_AND_ASSIGN(FullReverseIterator); }; } // namespace diff --git a/util/linux/memory_map_test.cc b/util/linux/memory_map_test.cc index 0ee90800..4ab7b05c 100644 --- a/util/linux/memory_map_test.cc +++ b/util/linux/memory_map_test.cc @@ -136,6 +136,10 @@ void InitializeFile(const base::FilePath& path, class MapChildTest : public Multiprocess { public: MapChildTest() : Multiprocess(), page_size_(getpagesize()) {} + + MapChildTest(const MapChildTest&) = delete; + MapChildTest& operator=(const MapChildTest&) = delete; + ~MapChildTest() {} private: @@ -249,8 +253,6 @@ class MapChildTest : public Multiprocess { } const size_t page_size_; - - DISALLOW_COPY_AND_ASSIGN(MapChildTest); }; TEST(MemoryMap, MapChild) { @@ -326,6 +328,10 @@ TEST(MemoryMap, SelfLargeMapFile) { class MapRunningChildTest : public Multiprocess { public: MapRunningChildTest() : Multiprocess(), page_size_(getpagesize()) {} + + MapRunningChildTest(const MapRunningChildTest&) = delete; + MapRunningChildTest& operator=(const MapRunningChildTest&) = delete; + ~MapRunningChildTest() {} private: @@ -384,8 +390,6 @@ class MapRunningChildTest : public Multiprocess { static constexpr size_t kNumMappings = 1024; const size_t page_size_; - - DISALLOW_COPY_AND_ASSIGN(MapRunningChildTest); }; TEST(MemoryMap, MapRunningChild) { diff --git a/util/linux/proc_stat_reader.h b/util/linux/proc_stat_reader.h index 6eae8fbb..193330c7 100644 --- a/util/linux/proc_stat_reader.h +++ b/util/linux/proc_stat_reader.h @@ -21,7 +21,6 @@ #include -#include "base/macros.h" #include "util/linux/ptrace_connection.h" #include "util/misc/initialization_state_dcheck.h" @@ -31,6 +30,10 @@ namespace crashpad { class ProcStatReader { public: ProcStatReader(); + + ProcStatReader(const ProcStatReader&) = delete; + ProcStatReader& operator=(const ProcStatReader&) = delete; + ~ProcStatReader(); //! \brief Initializes the reader. @@ -74,8 +77,6 @@ class ProcStatReader { std::string contents_; size_t third_column_position_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ProcStatReader); }; } // namespace crashpad diff --git a/util/linux/proc_task_reader_test.cc b/util/linux/proc_task_reader_test.cc index a93b2d4e..ab2650f5 100644 --- a/util/linux/proc_task_reader_test.cc +++ b/util/linux/proc_task_reader_test.cc @@ -14,7 +14,6 @@ #include "util/linux/proc_task_reader.h" -#include "base/macros.h" #include "base/strings/stringprintf.h" #include "gtest/gtest.h" #include "test/multiprocess_exec.h" @@ -123,6 +122,9 @@ class ProcTaskTest : public MultiprocessExec { SetChildTestMainFunction("ProcTaskTestChild"); } + ProcTaskTest(const ProcTaskTest&) = delete; + ProcTaskTest& operator=(const ProcTaskTest&) = delete; + private: bool ReadIDFromChild(std::vector* threads) { pid_t tid; @@ -147,8 +149,6 @@ class ProcTaskTest : public MultiprocessExec { EXPECT_TRUE(FindThreadID(ids_to_find[index], threads)); } } - - DISALLOW_COPY_AND_ASSIGN(ProcTaskTest); }; TEST(ProcTaskReader, ReadChild) { diff --git a/util/linux/ptrace_broker.cc b/util/linux/ptrace_broker.cc index 13c8b798..9bf133bc 100644 --- a/util/linux/ptrace_broker.cc +++ b/util/linux/ptrace_broker.cc @@ -61,6 +61,9 @@ class PtraceBroker::AttachmentsArray { public: AttachmentsArray() : allocation_(false), attach_count_(0) {} + AttachmentsArray(const AttachmentsArray&) = delete; + AttachmentsArray& operator=(const AttachmentsArray&) = delete; + ~AttachmentsArray() { for (size_t index = 0; index < attach_count_; ++index) { PtraceDetach(Attachments()[index], false); @@ -98,8 +101,6 @@ class PtraceBroker::AttachmentsArray { ScopedMmap allocation_; size_t attach_count_; - - DISALLOW_COPY_AND_ASSIGN(AttachmentsArray); }; PtraceBroker::PtraceBroker(int sock, pid_t pid, bool is_64_bit) diff --git a/util/linux/ptrace_broker.h b/util/linux/ptrace_broker.h index 5d90cb20..4502da20 100644 --- a/util/linux/ptrace_broker.h +++ b/util/linux/ptrace_broker.h @@ -19,7 +19,6 @@ #include #include -#include "base/macros.h" #include "util/file/file_io.h" #include "util/linux/exception_handler_protocol.h" #include "util/linux/ptrace_connection.h" @@ -163,6 +162,9 @@ class PtraceBroker { //! 64-bit process. PtraceBroker(int sock, pid_t pid, bool is_64_bit); + PtraceBroker(const PtraceBroker&) = delete; + PtraceBroker& operator=(const PtraceBroker&) = delete; + ~PtraceBroker(); //! \brief Restricts the broker to serving the contents of files under \a @@ -210,8 +212,6 @@ class PtraceBroker { int sock_; pid_t memory_pid_; bool tried_opening_mem_file_; - - DISALLOW_COPY_AND_ASSIGN(PtraceBroker); }; } // namespace crashpad diff --git a/util/linux/ptrace_broker_test.cc b/util/linux/ptrace_broker_test.cc index 2012df38..b07a9be5 100644 --- a/util/linux/ptrace_broker_test.cc +++ b/util/linux/ptrace_broker_test.cc @@ -40,6 +40,10 @@ namespace { class ScopedTimeoutThread : public Thread { public: ScopedTimeoutThread() : join_sem_(0) {} + + ScopedTimeoutThread(const ScopedTimeoutThread&) = delete; + ScopedTimeoutThread& operator=(const ScopedTimeoutThread&) = delete; + ~ScopedTimeoutThread() { EXPECT_TRUE(JoinWithTimeout(5.0)); } protected: @@ -55,8 +59,6 @@ class ScopedTimeoutThread : public Thread { } Semaphore join_sem_; - - DISALLOW_COPY_AND_ASSIGN(ScopedTimeoutThread); }; class RunBrokerThread : public ScopedTimeoutThread { @@ -64,6 +66,9 @@ class RunBrokerThread : public ScopedTimeoutThread { RunBrokerThread(PtraceBroker* broker) : ScopedTimeoutThread(), broker_(broker) {} + RunBrokerThread(const RunBrokerThread&) = delete; + RunBrokerThread& operator=(const RunBrokerThread&) = delete; + ~RunBrokerThread() {} private: @@ -73,8 +78,6 @@ class RunBrokerThread : public ScopedTimeoutThread { } PtraceBroker* broker_; - - DISALLOW_COPY_AND_ASSIGN(RunBrokerThread); }; class BlockOnReadThread : public ScopedTimeoutThread { @@ -82,6 +85,9 @@ class BlockOnReadThread : public ScopedTimeoutThread { BlockOnReadThread(int readfd, int writefd) : ScopedTimeoutThread(), readfd_(readfd), writefd_(writefd) {} + BlockOnReadThread(const BlockOnReadThread&) = delete; + BlockOnReadThread& operator=(const BlockOnReadThread&) = delete; + ~BlockOnReadThread() {} private: @@ -98,13 +104,15 @@ class BlockOnReadThread : public ScopedTimeoutThread { int readfd_; int writefd_; - - DISALLOW_COPY_AND_ASSIGN(BlockOnReadThread); }; class SameBitnessTest : public Multiprocess { public: SameBitnessTest() : Multiprocess(), mapping_() {} + + SameBitnessTest(const SameBitnessTest&) = delete; + SameBitnessTest& operator=(const SameBitnessTest&) = delete; + ~SameBitnessTest() {} protected: @@ -267,8 +275,6 @@ class SameBitnessTest : public Multiprocess { } ScopedMmap mapping_; - - DISALLOW_COPY_AND_ASSIGN(SameBitnessTest); }; TEST(PtraceBroker, SameBitness) { diff --git a/util/linux/ptrace_client.h b/util/linux/ptrace_client.h index 896a8b4c..299aafc9 100644 --- a/util/linux/ptrace_client.h +++ b/util/linux/ptrace_client.h @@ -19,7 +19,6 @@ #include -#include "base/macros.h" #include "util/linux/ptrace_connection.h" #include "util/misc/address_types.h" #include "util/misc/initialization_state_dcheck.h" @@ -35,6 +34,10 @@ namespace crashpad { class PtraceClient : public PtraceConnection { public: PtraceClient(); + + PtraceClient(const PtraceClient&) = delete; + PtraceClient& operator=(const PtraceClient&) = delete; + ~PtraceClient(); //! \brief Initializes this object. @@ -69,8 +72,6 @@ class PtraceClient : public PtraceConnection { pid_t pid_; bool is_64_bit_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(PtraceClient); }; } // namespace crashpad diff --git a/util/linux/ptracer.h b/util/linux/ptracer.h index 33eeb3ae..696ac332 100644 --- a/util/linux/ptracer.h +++ b/util/linux/ptracer.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" #include "util/linux/address_types.h" #include "util/linux/thread_info.h" #include "util/misc/initialization_state_dcheck.h" @@ -46,6 +45,9 @@ class Ptracer { //! \param[in] can_log Whether methods in this class can log error messages. explicit Ptracer(bool can_log); + Ptracer(const Ptracer&) = delete; + Ptracer& operator=(const Ptracer&) = delete; + ~Ptracer(); //! \brief Initializes this object to the bitness of the process whose process @@ -98,8 +100,6 @@ class Ptracer { bool is_64_bit_; bool can_log_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(Ptracer); }; } // namespace crashpad diff --git a/util/linux/ptracer_test.cc b/util/linux/ptracer_test.cc index 9a759850..7465f90a 100644 --- a/util/linux/ptracer_test.cc +++ b/util/linux/ptracer_test.cc @@ -28,6 +28,10 @@ namespace { class SameBitnessTest : public Multiprocess { public: SameBitnessTest() : Multiprocess() {} + + SameBitnessTest(const SameBitnessTest&) = delete; + SameBitnessTest& operator=(const SameBitnessTest&) = delete; + ~SameBitnessTest() {} private: @@ -65,8 +69,6 @@ class SameBitnessTest : public Multiprocess { CheckedReadFileAtEOF(ReadPipeHandle()); } - - DISALLOW_COPY_AND_ASSIGN(SameBitnessTest); }; TEST(Ptracer, SameBitness) { diff --git a/util/linux/scoped_pr_set_dumpable.h b/util/linux/scoped_pr_set_dumpable.h index 16819309..7cd3aa7a 100644 --- a/util/linux/scoped_pr_set_dumpable.h +++ b/util/linux/scoped_pr_set_dumpable.h @@ -15,7 +15,6 @@ #ifndef CRASHPAD_UTIL_LINUX_SCOPED_PR_SET_DUMPABLE_H_ #define CRASHPAD_UTIL_LINUX_SCOPED_PR_SET_DUMPABLE_H_ -#include "base/macros.h" namespace crashpad { @@ -30,13 +29,14 @@ class ScopedPrSetDumpable { //! \param[in] may_log `true` if this object may log error messages. explicit ScopedPrSetDumpable(bool may_log); + ScopedPrSetDumpable(const ScopedPrSetDumpable&) = delete; + ScopedPrSetDumpable& operator=(const ScopedPrSetDumpable&) = delete; + ~ScopedPrSetDumpable(); private: bool was_dumpable_; bool may_log_; - - DISALLOW_COPY_AND_ASSIGN(ScopedPrSetDumpable); }; } // namespace crashpad diff --git a/util/linux/scoped_pr_set_ptracer.h b/util/linux/scoped_pr_set_ptracer.h index 2bc8677b..3d5e55c6 100644 --- a/util/linux/scoped_pr_set_ptracer.h +++ b/util/linux/scoped_pr_set_ptracer.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" namespace crashpad { @@ -37,13 +36,14 @@ class ScopedPrSetPtracer { //! \param[in] may_log if `true`, this class may log error messages. ScopedPrSetPtracer(pid_t pid, bool may_log); + ScopedPrSetPtracer(const ScopedPrSetPtracer&) = delete; + ScopedPrSetPtracer& operator=(const ScopedPrSetPtracer&) = delete; + ~ScopedPrSetPtracer(); private: bool success_; bool may_log_; - - DISALLOW_COPY_AND_ASSIGN(ScopedPrSetPtracer); }; } // namespace crashpad diff --git a/util/linux/scoped_ptrace_attach.h b/util/linux/scoped_ptrace_attach.h index f380d254..e38464ae 100644 --- a/util/linux/scoped_ptrace_attach.h +++ b/util/linux/scoped_ptrace_attach.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" namespace crashpad { @@ -45,6 +44,10 @@ bool PtraceDetach(pid_t pid, bool can_log = true); class ScopedPtraceAttach { public: ScopedPtraceAttach(); + + ScopedPtraceAttach(const ScopedPtraceAttach&) = delete; + ScopedPtraceAttach& operator=(const ScopedPtraceAttach&) = delete; + ~ScopedPtraceAttach(); //! \brief Detaches from the process by calling `ptrace()`. @@ -61,8 +64,6 @@ class ScopedPtraceAttach { private: pid_t pid_; - - DISALLOW_COPY_AND_ASSIGN(ScopedPtraceAttach); }; } // namespace crashpad diff --git a/util/linux/scoped_ptrace_attach_test.cc b/util/linux/scoped_ptrace_attach_test.cc index d009e682..b22c5aec 100644 --- a/util/linux/scoped_ptrace_attach_test.cc +++ b/util/linux/scoped_ptrace_attach_test.cc @@ -39,18 +39,23 @@ namespace { class AttachTest : public Multiprocess { public: AttachTest() : Multiprocess() {} + + AttachTest(const AttachTest&) = delete; + AttachTest& operator=(const AttachTest&) = delete; + ~AttachTest() {} protected: const long kWord = 42; - - private: - DISALLOW_COPY_AND_ASSIGN(AttachTest); }; class AttachToChildTest : public AttachTest { public: AttachToChildTest() : AttachTest() {} + + AttachToChildTest(const AttachToChildTest&) = delete; + AttachToChildTest& operator=(const AttachToChildTest&) = delete; + ~AttachToChildTest() {} private: @@ -82,8 +87,6 @@ class AttachToChildTest : public AttachTest { CheckedReadFileAtEOF(ReadPipeHandle()); } - - DISALLOW_COPY_AND_ASSIGN(AttachToChildTest); }; TEST(ScopedPtraceAttach, AttachChild) { @@ -94,6 +97,10 @@ TEST(ScopedPtraceAttach, AttachChild) { class AttachToParentResetTest : public AttachTest { public: AttachToParentResetTest() : AttachTest() {} + + AttachToParentResetTest(const AttachToParentResetTest&) = delete; + AttachToParentResetTest& operator=(const AttachToParentResetTest&) = delete; + ~AttachToParentResetTest() {} private: @@ -124,8 +131,6 @@ class AttachToParentResetTest : public AttachTest { ASSERT_EQ(ptrace(PTRACE_PEEKDATA, pid, &kWord, nullptr), -1); EXPECT_EQ(errno, ESRCH) << ErrnoMessage("ptrace"); } - - DISALLOW_COPY_AND_ASSIGN(AttachToParentResetTest); }; TEST(ScopedPtraceAttach, AttachParentReset) { @@ -136,6 +141,11 @@ TEST(ScopedPtraceAttach, AttachParentReset) { class AttachToParentDestructorTest : public AttachTest { public: AttachToParentDestructorTest() : AttachTest() {} + + AttachToParentDestructorTest(const AttachToParentDestructorTest&) = delete; + AttachToParentDestructorTest& operator=(const AttachToParentDestructorTest&) = + delete; + ~AttachToParentDestructorTest() {} private: @@ -164,8 +174,6 @@ class AttachToParentDestructorTest : public AttachTest { ASSERT_EQ(ptrace(PTRACE_PEEKDATA, pid, &kWord, nullptr), -1); EXPECT_EQ(errno, ESRCH) << ErrnoMessage("ptrace"); } - - DISALLOW_COPY_AND_ASSIGN(AttachToParentDestructorTest); }; TEST(ScopedPtraceAttach, AttachParentDestructor) { diff --git a/util/linux/socket.h b/util/linux/socket.h index d762592b..f232778d 100644 --- a/util/linux/socket.h +++ b/util/linux/socket.h @@ -20,7 +20,6 @@ #include -#include "base/macros.h" #include "util/file/file_io.h" namespace crashpad { @@ -29,6 +28,10 @@ namespace crashpad { //! sockets. class UnixCredentialSocket { public: + UnixCredentialSocket() = delete; + UnixCredentialSocket(const UnixCredentialSocket&) = delete; + UnixCredentialSocket& operator=(const UnixCredentialSocket&) = delete; + //! \brief Creates an `AF_UNIX` family socket pair with `SO_PASSCRED` set on //! each socket. //! @@ -86,9 +89,6 @@ class UnixCredentialSocket { size_t buf_size, ucred* creds, std::vector* fds = nullptr); - - private: - DISALLOW_IMPLICIT_CONSTRUCTORS(UnixCredentialSocket); }; } // namespace crashpad diff --git a/util/linux/socket_test.cc b/util/linux/socket_test.cc index d73ec0b4..284953f6 100644 --- a/util/linux/socket_test.cc +++ b/util/linux/socket_test.cc @@ -14,7 +14,6 @@ #include "util/linux/socket.h" -#include "base/macros.h" #include "base/posix/eintr_wrapper.h" #include "gtest/gtest.h" #include "util/linux/socket.h" diff --git a/util/mach/child_port_handshake.cc b/util/mach/child_port_handshake.cc index 433cb052..28fdbae6 100644 --- a/util/mach/child_port_handshake.cc +++ b/util/mach/child_port_handshake.cc @@ -51,6 +51,10 @@ namespace { class ChildPortHandshakeServer final : public ChildPortServer::Interface { public: ChildPortHandshakeServer(); + + ChildPortHandshakeServer(const ChildPortHandshakeServer&) = delete; + ChildPortHandshakeServer& operator=(const ChildPortHandshakeServer&) = delete; + ~ChildPortHandshakeServer(); mach_port_t RunServer(base::ScopedFD server_write_fd, @@ -69,8 +73,6 @@ class ChildPortHandshakeServer final : public ChildPortServer::Interface { mach_port_t port_; mach_msg_type_name_t right_type_; bool checked_in_; - - DISALLOW_COPY_AND_ASSIGN(ChildPortHandshakeServer); }; ChildPortHandshakeServer::ChildPortHandshakeServer() diff --git a/util/mach/child_port_handshake.h b/util/mach/child_port_handshake.h index 429164a9..0399f9b8 100644 --- a/util/mach/child_port_handshake.h +++ b/util/mach/child_port_handshake.h @@ -155,6 +155,10 @@ class ChildPortHandshake { }; ChildPortHandshake(); + + ChildPortHandshake(const ChildPortHandshake&) = delete; + ChildPortHandshake& operator=(const ChildPortHandshake&) = delete; + ~ChildPortHandshake(); //! \brief Obtains the “read” side of the pipe, to be used by the client. @@ -321,8 +325,6 @@ class ChildPortHandshake { base::ScopedFD server_write_fd_; friend class test::ChildPortHandshakeTest; - - DISALLOW_COPY_AND_ASSIGN(ChildPortHandshake); }; } // namespace crashpad diff --git a/util/mach/child_port_handshake_test.cc b/util/mach/child_port_handshake_test.cc index 44139b11..5301c4ce 100644 --- a/util/mach/child_port_handshake_test.cc +++ b/util/mach/child_port_handshake_test.cc @@ -87,6 +87,9 @@ class ChildPortHandshakeTest : public Multiprocess { test_type_(test_type) { } + ChildPortHandshakeTest(const ChildPortHandshakeTest&) = delete; + ChildPortHandshakeTest& operator=(const ChildPortHandshakeTest&) = delete; + ~ChildPortHandshakeTest() { } @@ -254,8 +257,6 @@ class ChildPortHandshakeTest : public Multiprocess { ChildPortHandshake child_port_handshake_; ClientProcess client_process_; TestType test_type_; - - DISALLOW_COPY_AND_ASSIGN(ChildPortHandshakeTest); }; TEST(ChildPortHandshake, ChildClientChecksIn_ReceiveRight) { diff --git a/util/mach/child_port_server.h b/util/mach/child_port_server.h index 47d72e4d..b7a9895d 100644 --- a/util/mach/child_port_server.h +++ b/util/mach/child_port_server.h @@ -19,7 +19,6 @@ #include -#include "base/macros.h" #include "util/mach/child_port_types.h" #include "util/mach/mach_message_server.h" @@ -62,6 +61,9 @@ class ChildPortServer : public MachMessageServer::Interface { //! \param[in] interface The interface to dispatch requests to. Weak. explicit ChildPortServer(Interface* interface); + ChildPortServer(const ChildPortServer&) = delete; + ChildPortServer& operator=(const ChildPortServer&) = delete; + // MachMessageServer::Interface: bool MachMessageServerFunction(const mach_msg_header_t* in_header, mach_msg_header_t* out_header, @@ -72,8 +74,6 @@ class ChildPortServer : public MachMessageServer::Interface { private: Interface* interface_; // weak - - DISALLOW_COPY_AND_ASSIGN(ChildPortServer); }; } // namespace crashpad diff --git a/util/mach/composite_mach_message_server.h b/util/mach/composite_mach_message_server.h index 785af4dc..f1f75f3c 100644 --- a/util/mach/composite_mach_message_server.h +++ b/util/mach/composite_mach_message_server.h @@ -20,7 +20,6 @@ #include #include -#include "base/macros.h" #include "util/mach/mach_message_server.h" namespace crashpad { @@ -41,6 +40,11 @@ namespace crashpad { class CompositeMachMessageServer : public MachMessageServer::Interface { public: CompositeMachMessageServer(); + + CompositeMachMessageServer(const CompositeMachMessageServer&) = delete; + CompositeMachMessageServer& operator=(const CompositeMachMessageServer&) = + delete; + ~CompositeMachMessageServer(); //! \brief Adds a handler that messages can be dispatched to based on request @@ -94,8 +98,6 @@ class CompositeMachMessageServer : public MachMessageServer::Interface { HandlerMap handler_map_; // weak mach_msg_size_t request_size_; mach_msg_size_t reply_size_; - - DISALLOW_COPY_AND_ASSIGN(CompositeMachMessageServer); }; } // namespace crashpad diff --git a/util/mach/composite_mach_message_server_test.cc b/util/mach/composite_mach_message_server_test.cc index af4a6002..91a3851f 100644 --- a/util/mach/composite_mach_message_server_test.cc +++ b/util/mach/composite_mach_message_server_test.cc @@ -55,6 +55,9 @@ class TestMachMessageHandler : public MachMessageServer::Interface { destroy_complex_request_(false) { } + TestMachMessageHandler(const TestMachMessageHandler&) = delete; + TestMachMessageHandler& operator=(const TestMachMessageHandler&) = delete; + ~TestMachMessageHandler() { } @@ -110,8 +113,6 @@ class TestMachMessageHandler : public MachMessageServer::Interface { kern_return_t return_code_; bool return_value_; bool destroy_complex_request_; - - DISALLOW_COPY_AND_ASSIGN(TestMachMessageHandler); }; TEST(CompositeMachMessageServer, HandlerDoesNotHandle) { diff --git a/util/mach/exc_client_variants_test.cc b/util/mach/exc_client_variants_test.cc index 867eb080..aba72052 100644 --- a/util/mach/exc_client_variants_test.cc +++ b/util/mach/exc_client_variants_test.cc @@ -20,7 +20,6 @@ #include #include "base/cxx17_backports.h" -#include "base/macros.h" #include "base/strings/stringprintf.h" #include "gtest/gtest.h" #include "test/mac/mach_errors.h" @@ -50,6 +49,9 @@ class TestExcClientVariants : public MachMultiprocess, ++exception_subcode_; } + TestExcClientVariants(const TestExcClientVariants&) = delete; + TestExcClientVariants& operator=(const TestExcClientVariants&) = delete; + // UniversalMachExcServer::Interface: virtual kern_return_t CatchMachException( @@ -251,8 +253,6 @@ class TestExcClientVariants : public MachMultiprocess, static exception_type_t exception_; static mach_exception_code_t exception_code_; static mach_exception_subcode_t exception_subcode_; - - DISALLOW_COPY_AND_ASSIGN(TestExcClientVariants); }; exception_type_t TestExcClientVariants::exception_ = 0; diff --git a/util/mach/exc_server_variants.cc b/util/mach/exc_server_variants.cc index 94070b1f..b9357a78 100644 --- a/util/mach/exc_server_variants.cc +++ b/util/mach/exc_server_variants.cc @@ -230,6 +230,9 @@ class ExcServer : public MachMessageServer::Interface { explicit ExcServer(Interface* interface) : MachMessageServer::Interface(), interface_(interface) {} + ExcServer(const ExcServer&) = delete; + ExcServer& operator=(const ExcServer&) = delete; + // MachMessageServer::Interface: bool MachMessageServerFunction(const mach_msg_header_t* in_header, @@ -256,8 +259,6 @@ class ExcServer : public MachMessageServer::Interface { private: Interface* interface_; // weak - - DISALLOW_COPY_AND_ASSIGN(ExcServer); }; template @@ -453,6 +454,9 @@ class SimplifiedExcServer final : public ExcServer, ExcServer::Interface(), interface_(interface) {} + SimplifiedExcServer(const SimplifiedExcServer&) = delete; + SimplifiedExcServer& operator=(const SimplifiedExcServer&) = delete; + // ExcServer::Interface: kern_return_t CatchExceptionRaise(exception_handler_t exception_port, @@ -544,8 +548,6 @@ class SimplifiedExcServer final : public ExcServer, private: Interface* interface_; // weak - - DISALLOW_COPY_AND_ASSIGN(SimplifiedExcServer); }; } // namespace @@ -569,6 +571,10 @@ class UniversalMachExcServerImpl final AddHandler(&mach_exc_server_); } + UniversalMachExcServerImpl(const UniversalMachExcServerImpl&) = delete; + UniversalMachExcServerImpl& operator=(const UniversalMachExcServerImpl&) = + delete; + ~UniversalMachExcServerImpl() {} // SimplifiedExcServer::Interface: @@ -643,8 +649,6 @@ class UniversalMachExcServerImpl final SimplifiedExcServer exc_server_; SimplifiedExcServer mach_exc_server_; UniversalMachExcServer::Interface* interface_; // weak - - DISALLOW_COPY_AND_ASSIGN(UniversalMachExcServerImpl); }; } // namespace internal diff --git a/util/mach/exc_server_variants.h b/util/mach/exc_server_variants.h index c7b35d41..15d1cb2a 100644 --- a/util/mach/exc_server_variants.h +++ b/util/mach/exc_server_variants.h @@ -20,7 +20,6 @@ #include #include -#include "base/macros.h" #include "util/mach/mach_extensions.h" #include "util/mach/mach_message_server.h" @@ -115,6 +114,9 @@ class UniversalMachExcServer final : public MachMessageServer::Interface { //! \param[in] interface The interface to dispatch requests to. Weak. explicit UniversalMachExcServer(Interface* interface); + UniversalMachExcServer(const UniversalMachExcServer&) = delete; + UniversalMachExcServer& operator=(const UniversalMachExcServer&) = delete; + ~UniversalMachExcServer(); // MachMessageServer::Interface: @@ -127,8 +129,6 @@ class UniversalMachExcServer final : public MachMessageServer::Interface { private: std::unique_ptr impl_; - - DISALLOW_COPY_AND_ASSIGN(UniversalMachExcServer); }; //! \brief Computes an approriate successful return value for an exception diff --git a/util/mach/exc_server_variants_test.cc b/util/mach/exc_server_variants_test.cc index 836048b8..d74cbc59 100644 --- a/util/mach/exc_server_variants_test.cc +++ b/util/mach/exc_server_variants_test.cc @@ -979,6 +979,9 @@ class TestExcServerVariants : public MachMultiprocess, SetExpectedChildTerminationBuiltinTrap(); } + TestExcServerVariants(const TestExcServerVariants&) = delete; + TestExcServerVariants& operator=(const TestExcServerVariants&) = delete; + // UniversalMachExcServer::Interface: virtual kern_return_t CatchMachException( @@ -1089,8 +1092,6 @@ class TestExcServerVariants : public MachMultiprocess, static const mach_msg_option_t kMachMessageOptions = MACH_RCV_TRAILER_TYPE(MACH_MSG_TRAILER_FORMAT_0); - - DISALLOW_COPY_AND_ASSIGN(TestExcServerVariants); }; TEST(ExcServerVariants, ExceptionRaise) { diff --git a/util/mach/exception_ports.h b/util/mach/exception_ports.h index e128f654..06a95207 100644 --- a/util/mach/exception_ports.h +++ b/util/mach/exception_ports.h @@ -19,7 +19,6 @@ #include -#include "base/macros.h" namespace crashpad { @@ -97,6 +96,10 @@ class ExceptionPorts { using VectorType = std::vector; ExceptionHandlerVector(); + + ExceptionHandlerVector(const ExceptionHandlerVector&) = delete; + ExceptionHandlerVector& operator=(const ExceptionHandlerVector&) = delete; + ~ExceptionHandlerVector(); VectorType::const_iterator begin() const { return vector_.begin(); } @@ -113,8 +116,6 @@ class ExceptionPorts { void Deallocate(); VectorType vector_; - - DISALLOW_COPY_AND_ASSIGN(ExceptionHandlerVector); }; //! \brief Constructs an interface object to get or set exception ports on a @@ -136,6 +137,9 @@ class ExceptionPorts { //! appropriately for \a target_type. ExceptionPorts(TargetType target_type, mach_port_t target_port); + ExceptionPorts(const ExceptionPorts&) = delete; + ExceptionPorts& operator=(const ExceptionPorts&) = delete; + ~ExceptionPorts(); //! \brief Calls `*_get_exception_ports()` on the target. @@ -253,8 +257,6 @@ class ExceptionPorts { // even with a TASK_NULL target_port, because it is incorrect to deallocate // the result of mach_task_self(). bool dealloc_target_port_; - - DISALLOW_COPY_AND_ASSIGN(ExceptionPorts); }; } // namespace crashpad diff --git a/util/mach/exception_ports_test.cc b/util/mach/exception_ports_test.cc index d3a211fb..b29e125e 100644 --- a/util/mach/exception_ports_test.cc +++ b/util/mach/exception_ports_test.cc @@ -22,7 +22,6 @@ #include "base/check.h" #include "base/mac/mach_logging.h" #include "base/mac/scoped_mach_port.h" -#include "base/macros.h" #include "base/notreached.h" #include "build/build_config.h" #include "gtest/gtest.h" @@ -149,6 +148,9 @@ class TestExceptionPorts : public MachMultiprocess, } } + TestExceptionPorts(const TestExceptionPorts&) = delete; + TestExceptionPorts& operator=(const TestExceptionPorts&) = delete; + SetOrSwap set_or_swap() const { return set_or_swap_; } SetOn set_on() const { return set_on_; } SetType set_type() const { return set_type_; } @@ -230,6 +232,9 @@ class TestExceptionPorts : public MachMultiprocess, init_semaphore_(0), crash_semaphore_(0) {} + Child(const Child&) = delete; + Child& operator=(const Child&) = delete; + ~Child() {} void Run() { @@ -412,8 +417,6 @@ class TestExceptionPorts : public MachMultiprocess, // The child thread waits on this for the parent thread to indicate that the // child can test its exception ports and possibly crash, as appropriate. Semaphore crash_semaphore_; - - DISALLOW_COPY_AND_ASSIGN(Child); }; // MachMultiprocess: @@ -583,8 +586,6 @@ class TestExceptionPorts : public MachMultiprocess, // true if an exception message was handled. bool handled_; - - DISALLOW_COPY_AND_ASSIGN(TestExceptionPorts); }; TEST(ExceptionPorts, TaskExceptionPorts_SetInProcess_NoCrash) { diff --git a/util/mach/mach_message_server.cc b/util/mach/mach_message_server.cc index 39633730..8cf119c4 100644 --- a/util/mach/mach_message_server.cc +++ b/util/mach/mach_message_server.cc @@ -32,6 +32,9 @@ class MachMessageBuffer { public: MachMessageBuffer() : vm_() {} + MachMessageBuffer(const MachMessageBuffer&) = delete; + MachMessageBuffer& operator=(const MachMessageBuffer&) = delete; + ~MachMessageBuffer() {} //! \return A pointer to the buffer. @@ -81,8 +84,6 @@ class MachMessageBuffer { private: base::mac::ScopedMachVM vm_; - - DISALLOW_COPY_AND_ASSIGN(MachMessageBuffer); }; // Wraps MachMessageWithDeadline(), using a MachMessageBuffer argument which diff --git a/util/mach/mach_message_server.h b/util/mach/mach_message_server.h index 5e96c4ce..67812917 100644 --- a/util/mach/mach_message_server.h +++ b/util/mach/mach_message_server.h @@ -19,7 +19,6 @@ #include -#include "base/macros.h" namespace crashpad { @@ -125,6 +124,10 @@ class MachMessageServer { kReceiveLargeResize, }; + MachMessageServer() = delete; + MachMessageServer(const MachMessageServer&) = delete; + MachMessageServer& operator=(const MachMessageServer&) = delete; + //! \brief Runs a Mach message server to handle a Mach RPC request for MIG //! servers. //! @@ -173,9 +176,6 @@ class MachMessageServer { Persistent persistent, ReceiveLarge receive_large, mach_msg_timeout_t timeout_ms); - - private: - DISALLOW_IMPLICIT_CONSTRUCTORS(MachMessageServer); }; } // namespace crashpad diff --git a/util/mach/mach_message_server_test.cc b/util/mach/mach_message_server_test.cc index 4a744d97..6785827b 100644 --- a/util/mach/mach_message_server_test.cc +++ b/util/mach/mach_message_server_test.cc @@ -23,7 +23,6 @@ #include "base/cxx17_backports.h" #include "base/mac/scoped_mach_port.h" -#include "base/macros.h" #include "gtest/gtest.h" #include "test/mac/mach_errors.h" #include "test/mac/mach_multiprocess.h" @@ -181,6 +180,9 @@ class TestMachMessageServer : public MachMessageServer::Interface, parent_complex_message_port_(MACH_PORT_NULL) { } + TestMachMessageServer(const TestMachMessageServer&) = delete; + TestMachMessageServer& operator=(const TestMachMessageServer&) = delete; + // Runs the test. void Test() { EXPECT_EQ(replies_, requests_); @@ -592,8 +594,6 @@ class TestMachMessageServer : public MachMessageServer::Interface, static constexpr mach_msg_id_t kRequestMessageID = 16237; static constexpr mach_msg_id_t kReplyMessageID = kRequestMessageID + 100; - - DISALLOW_COPY_AND_ASSIGN(TestMachMessageServer); }; uint32_t TestMachMessageServer::requests_; diff --git a/util/mach/notify_server.h b/util/mach/notify_server.h index ad0a8882..9e318206 100644 --- a/util/mach/notify_server.h +++ b/util/mach/notify_server.h @@ -19,7 +19,6 @@ #include -#include "base/macros.h" #include "util/mach/mach_message_server.h" namespace crashpad { @@ -180,6 +179,9 @@ class NotifyServer : public MachMessageServer::Interface { //! was unexpected and not processed. class DefaultInterface : public Interface { public: + DefaultInterface(const DefaultInterface&) = delete; + DefaultInterface& operator=(const DefaultInterface&) = delete; + // Interface: kern_return_t DoMachNotifyPortDeleted( @@ -210,9 +212,6 @@ class NotifyServer : public MachMessageServer::Interface { protected: DefaultInterface() : Interface() {} ~DefaultInterface() {} - - private: - DISALLOW_COPY_AND_ASSIGN(DefaultInterface); }; //! \brief Constructs an object of this class. @@ -220,6 +219,9 @@ class NotifyServer : public MachMessageServer::Interface { //! \param[in] interface The interface to dispatch requests to. Weak. explicit NotifyServer(Interface* interface); + NotifyServer(const NotifyServer&) = delete; + NotifyServer& operator=(const NotifyServer&) = delete; + // MachMessageServer::Interface: bool MachMessageServerFunction(const mach_msg_header_t* in_header, @@ -233,8 +235,6 @@ class NotifyServer : public MachMessageServer::Interface { private: Interface* interface_; // weak - - DISALLOW_COPY_AND_ASSIGN(NotifyServer); }; } // namespace crashpad diff --git a/util/mach/notify_server_test.cc b/util/mach/notify_server_test.cc index 40a38267..98a68820 100644 --- a/util/mach/notify_server_test.cc +++ b/util/mach/notify_server_test.cc @@ -163,6 +163,9 @@ mach_port_urefs_t DeadNameRightRefCount(mach_port_t port) { class NotifyServerTestBase : public testing::Test, public NotifyServer::Interface { public: + NotifyServerTestBase(const NotifyServerTestBase&) = delete; + NotifyServerTestBase& operator=(const NotifyServerTestBase&) = delete; + // NotifyServer::Interface: MOCK_METHOD(kern_return_t, @@ -282,8 +285,6 @@ class NotifyServerTestBase : public testing::Test, private: base::mac::ScopedMachReceiveRight server_port_; - - DISALLOW_COPY_AND_ASSIGN(NotifyServerTestBase); }; using NotifyServerTest = StrictMock; diff --git a/util/mach/scoped_task_suspend.h b/util/mach/scoped_task_suspend.h index 389ea5f6..f935983b 100644 --- a/util/mach/scoped_task_suspend.h +++ b/util/mach/scoped_task_suspend.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" namespace crashpad { @@ -32,12 +31,14 @@ namespace crashpad { class ScopedTaskSuspend { public: explicit ScopedTaskSuspend(task_t task); + + ScopedTaskSuspend(const ScopedTaskSuspend&) = delete; + ScopedTaskSuspend& operator=(const ScopedTaskSuspend&) = delete; + ~ScopedTaskSuspend(); private: task_t task_; - - DISALLOW_COPY_AND_ASSIGN(ScopedTaskSuspend); }; } // namespace crashpad diff --git a/util/mach/scoped_task_suspend_test.cc b/util/mach/scoped_task_suspend_test.cc index b23e6124..06a518da 100644 --- a/util/mach/scoped_task_suspend_test.cc +++ b/util/mach/scoped_task_suspend_test.cc @@ -44,6 +44,10 @@ int SuspendCount(task_t task) { class ScopedTaskSuspendTest final : public MachMultiprocess { public: ScopedTaskSuspendTest() : MachMultiprocess() {} + + ScopedTaskSuspendTest(const ScopedTaskSuspendTest&) = delete; + ScopedTaskSuspendTest& operator=(const ScopedTaskSuspendTest&) = delete; + ~ScopedTaskSuspendTest() {} private: @@ -71,8 +75,6 @@ class ScopedTaskSuspendTest final : public MachMultiprocess { void MachMultiprocessChild() override { } - - DISALLOW_COPY_AND_ASSIGN(ScopedTaskSuspendTest); }; TEST(ScopedTaskSuspend, ScopedTaskSuspend) { diff --git a/util/misc/initialization_state.h b/util/misc/initialization_state.h index 85f9b289..c8e24052 100644 --- a/util/misc/initialization_state.h +++ b/util/misc/initialization_state.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" namespace crashpad { @@ -57,6 +56,10 @@ class InitializationState { }; InitializationState() : state_(kStateUninitialized) {} + + InitializationState(const InitializationState&) = delete; + InitializationState& operator=(const InitializationState&) = delete; + ~InitializationState() { state_ = kStateDestroyed; } //! \brief Returns `true` if the object’s state is #kStateUninitialized and it @@ -91,8 +94,6 @@ class InitializationState { // kStateDestroyed, limiting this class’ ability to catch use-after-free // errors. volatile State state_; - - DISALLOW_COPY_AND_ASSIGN(InitializationState); }; } // namespace crashpad diff --git a/util/misc/initialization_state_dcheck.h b/util/misc/initialization_state_dcheck.h index 9fcfc760..e04ff234 100644 --- a/util/misc/initialization_state_dcheck.h +++ b/util/misc/initialization_state_dcheck.h @@ -19,7 +19,6 @@ #include "base/check_op.h" #include "base/compiler_specific.h" -#include "base/macros.h" #include "build/build_config.h" #include "util/misc/initialization_state.h" @@ -65,6 +64,10 @@ class InitializationStateDcheck : public InitializationState { public: InitializationStateDcheck() : InitializationState() {} + InitializationStateDcheck(const InitializationStateDcheck&) = delete; + InitializationStateDcheck& operator=(const InitializationStateDcheck&) = + delete; + //! \brief Returns the object’s state. //! //! Consumers of this class should not call this method. Use the @@ -99,9 +102,6 @@ class InitializationStateDcheck : public InitializationState { //! Consumers of this class should not call this method. Use the //! INITIALIZATION_STATE_SET_VALID() macro instead. State SetValid(); - - private: - DISALLOW_COPY_AND_ASSIGN(InitializationStateDcheck); }; // Using macros enables the non-DCHECK no-op implementation below to be more diff --git a/util/misc/metrics.h b/util/misc/metrics.h index 292f23a0..63c673a3 100644 --- a/util/misc/metrics.h +++ b/util/misc/metrics.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" #include "build/build_config.h" #include "util/file/file_io.h" @@ -35,6 +34,10 @@ namespace crashpad { //! Chromium's base, they allow integration with its metrics system. class Metrics { public: + Metrics() = delete; + Metrics(const Metrics&) = delete; + Metrics& operator=(const Metrics&) = delete; + //! \brief Values for CrashReportPending(). //! //! \note These are used as metrics enumeration values, so new values should @@ -209,9 +212,6 @@ class Metrics { static void InvalidIntermediateDumpKeySize( const internal::IntermediateDumpKey& key); #endif - - private: - DISALLOW_IMPLICIT_CONSTRUCTORS(Metrics); }; } // namespace crashpad diff --git a/util/misc/paths.h b/util/misc/paths.h index 30bbec50..0b0cfe45 100644 --- a/util/misc/paths.h +++ b/util/misc/paths.h @@ -16,13 +16,16 @@ #define CRASHPAD_UTIL_PATHS_H_ #include "base/files/file_path.h" -#include "base/macros.h" namespace crashpad { //! \brief Functions to obtain paths. class Paths { public: + Paths() = delete; + Paths(const Paths&) = delete; + Paths& operator=(const Paths&) = delete; + //! \brief Obtains the pathname of the currently-running executable. //! //! \param[out] path The pathname of the currently-running executable. @@ -31,8 +34,6 @@ class Paths { //! //! \note In test code, use test::TestPaths::Executable() instead. static bool Executable(base::FilePath* path); - - DISALLOW_IMPLICIT_CONSTRUCTORS(Paths); }; } // namespace crashpad diff --git a/util/misc/range_set.h b/util/misc/range_set.h index 573705ec..77be64cf 100644 --- a/util/misc/range_set.h +++ b/util/misc/range_set.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" #include "util/misc/address_types.h" namespace crashpad { @@ -26,6 +25,10 @@ namespace crashpad { class RangeSet { public: RangeSet(); + + RangeSet(const RangeSet&) = delete; + RangeSet& operator=(const RangeSet&) = delete; + ~RangeSet(); //! \brief Inserts a range into the set. @@ -42,8 +45,6 @@ class RangeSet { // the range. Overlapping ranges are merged on insertion. Adjacent ranges may // be merged. std::map ranges_; - - DISALLOW_COPY_AND_ASSIGN(RangeSet); }; } // namespace crashpad diff --git a/util/misc/scoped_forbid_return.h b/util/misc/scoped_forbid_return.h index 4f1e214f..31d48d84 100644 --- a/util/misc/scoped_forbid_return.h +++ b/util/misc/scoped_forbid_return.h @@ -15,7 +15,6 @@ #ifndef CRASHPAD_UTIL_MISC_SCOPED_FORBID_RETURN_H_ #define CRASHPAD_UTIL_MISC_SCOPED_FORBID_RETURN_H_ -#include "base/macros.h" namespace crashpad { @@ -31,6 +30,10 @@ namespace crashpad { class ScopedForbidReturn { public: ScopedForbidReturn() : armed_(true) {} + + ScopedForbidReturn(const ScopedForbidReturn&) = delete; + ScopedForbidReturn& operator=(const ScopedForbidReturn&) = delete; + ~ScopedForbidReturn(); //! \brief Arms the object so that it will abort execution when destroyed. @@ -45,8 +48,6 @@ class ScopedForbidReturn { private: bool armed_; - - DISALLOW_COPY_AND_ASSIGN(ScopedForbidReturn); }; } // namespace crashpad diff --git a/util/net/http_body.h b/util/net/http_body.h index 927e4a76..7d8ce7eb 100644 --- a/util/net/http_body.h +++ b/util/net/http_body.h @@ -21,7 +21,6 @@ #include #include -#include "base/macros.h" #include "util/file/file_io.h" #include "util/file/file_reader.h" @@ -58,6 +57,9 @@ class StringHTTPBodyStream : public HTTPBodyStream { //! \param[in] string The string to turn into a stream. explicit StringHTTPBodyStream(const std::string& string); + StringHTTPBodyStream(const StringHTTPBodyStream&) = delete; + StringHTTPBodyStream& operator=(const StringHTTPBodyStream&) = delete; + ~StringHTTPBodyStream() override; // HTTPBodyStream: @@ -66,8 +68,6 @@ class StringHTTPBodyStream : public HTTPBodyStream { private: std::string string_; size_t bytes_read_; - - DISALLOW_COPY_AND_ASSIGN(StringHTTPBodyStream); }; //! \brief An implementation of HTTPBodyStream that reads from a @@ -80,6 +80,9 @@ class FileReaderHTTPBodyStream : public HTTPBodyStream { //! will read. explicit FileReaderHTTPBodyStream(FileReaderInterface* reader); + FileReaderHTTPBodyStream(const FileReaderHTTPBodyStream&) = delete; + FileReaderHTTPBodyStream& operator=(const FileReaderHTTPBodyStream&) = delete; + ~FileReaderHTTPBodyStream() override; // HTTPBodyStream: @@ -88,8 +91,6 @@ class FileReaderHTTPBodyStream : public HTTPBodyStream { private: FileReaderInterface* reader_; // weak bool reached_eof_; - - DISALLOW_COPY_AND_ASSIGN(FileReaderHTTPBodyStream); }; //! \brief An implementation of HTTPBodyStream that combines an array of @@ -106,6 +107,9 @@ class CompositeHTTPBodyStream : public HTTPBodyStream { //! an instance of this class. explicit CompositeHTTPBodyStream(const PartsList& parts); + CompositeHTTPBodyStream(const CompositeHTTPBodyStream&) = delete; + CompositeHTTPBodyStream& operator=(const CompositeHTTPBodyStream&) = delete; + ~CompositeHTTPBodyStream() override; // HTTPBodyStream: @@ -114,8 +118,6 @@ class CompositeHTTPBodyStream : public HTTPBodyStream { private: PartsList parts_; PartsList::iterator current_part_; - - DISALLOW_COPY_AND_ASSIGN(CompositeHTTPBodyStream); }; } // namespace crashpad diff --git a/util/net/http_body_gzip.h b/util/net/http_body_gzip.h index da3a5f24..461a9a96 100644 --- a/util/net/http_body_gzip.h +++ b/util/net/http_body_gzip.h @@ -20,7 +20,6 @@ #include -#include "base/macros.h" #include "util/file/file_io.h" #include "util/net/http_body.h" @@ -36,6 +35,9 @@ class GzipHTTPBodyStream : public HTTPBodyStream { public: explicit GzipHTTPBodyStream(std::unique_ptr source); + GzipHTTPBodyStream(const GzipHTTPBodyStream&) = delete; + GzipHTTPBodyStream& operator=(const GzipHTTPBodyStream&) = delete; + ~GzipHTTPBodyStream() override; // HTTPBodyStream: @@ -58,8 +60,6 @@ class GzipHTTPBodyStream : public HTTPBodyStream { std::unique_ptr source_; std::unique_ptr z_stream_; State state_; - - DISALLOW_COPY_AND_ASSIGN(GzipHTTPBodyStream); }; } // namespace crashpad diff --git a/util/net/http_body_gzip_test.cc b/util/net/http_body_gzip_test.cc index 926dfca7..125f4d45 100644 --- a/util/net/http_body_gzip_test.cc +++ b/util/net/http_body_gzip_test.cc @@ -21,7 +21,6 @@ #include #include -#include "base/macros.h" #include "base/rand_util.h" #include "base/numerics/safe_conversions.h" #include "gtest/gtest.h" @@ -36,6 +35,10 @@ namespace { class ScopedZlibInflateStream { public: explicit ScopedZlibInflateStream(z_stream* zlib) : zlib_(zlib) {} + + ScopedZlibInflateStream(const ScopedZlibInflateStream&) = delete; + ScopedZlibInflateStream& operator=(const ScopedZlibInflateStream&) = delete; + ~ScopedZlibInflateStream() { int zr = inflateEnd(zlib_); EXPECT_EQ(zr, Z_OK) << "inflateEnd: " << ZlibErrorString(zr); @@ -43,7 +46,6 @@ class ScopedZlibInflateStream { private: z_stream* zlib_; // weak - DISALLOW_COPY_AND_ASSIGN(ScopedZlibInflateStream); }; void GzipInflate(const std::string& compressed, diff --git a/util/net/http_multipart_builder.h b/util/net/http_multipart_builder.h index c7c59a77..56ce52d7 100644 --- a/util/net/http_multipart_builder.h +++ b/util/net/http_multipart_builder.h @@ -19,7 +19,6 @@ #include #include -#include "base/macros.h" #include "util/file/file_reader.h" #include "util/net/http_headers.h" @@ -32,6 +31,10 @@ class HTTPBodyStream; class HTTPMultipartBuilder { public: HTTPMultipartBuilder(); + + HTTPMultipartBuilder(const HTTPMultipartBuilder&) = delete; + HTTPMultipartBuilder& operator=(const HTTPMultipartBuilder&) = delete; + ~HTTPMultipartBuilder(); //! \brief Enables or disables `gzip` compression. @@ -95,8 +98,6 @@ class HTTPMultipartBuilder { std::map form_data_; std::map file_attachments_; bool gzip_enabled_; - - DISALLOW_COPY_AND_ASSIGN(HTTPMultipartBuilder); }; } // namespace crashpad diff --git a/util/net/http_transport.h b/util/net/http_transport.h index acd4e442..0937ed41 100644 --- a/util/net/http_transport.h +++ b/util/net/http_transport.h @@ -19,7 +19,6 @@ #include #include "base/files/file_path.h" -#include "base/macros.h" #include "util/net/http_headers.h" namespace crashpad { @@ -35,6 +34,9 @@ class HTTPBodyStream; //! request that is appropriate for the host operating system. class HTTPTransport { public: + HTTPTransport(const HTTPTransport&) = delete; + HTTPTransport& operator=(const HTTPTransport&) = delete; + virtual ~HTTPTransport(); //! \brief Instantiates a concrete HTTPTransport class for the current @@ -112,8 +114,6 @@ class HTTPTransport { HTTPHeaders headers_; std::unique_ptr body_stream_; double timeout_; - - DISALLOW_COPY_AND_ASSIGN(HTTPTransport); }; } // namespace crashpad diff --git a/util/net/http_transport_libcurl.cc b/util/net/http_transport_libcurl.cc index 8993ebca..7e3f4118 100644 --- a/util/net/http_transport_libcurl.cc +++ b/util/net/http_transport_libcurl.cc @@ -43,6 +43,9 @@ namespace { // as a linkage table for libcurl procedures. class Libcurl { public: + Libcurl(const Libcurl&) = delete; + Libcurl& operator=(const Libcurl&) = delete; + static bool Initialized() { static bool initialized = Get()->Initialize(); return initialized; @@ -155,8 +158,6 @@ class Libcurl { NoCfiIcall curl_slist_free_all_; NoCfiIcall curl_slist_append_; NoCfiIcall curl_version_; - - DISALLOW_COPY_AND_ASSIGN(Libcurl); }; std::string UserAgent() { @@ -271,6 +272,10 @@ using ScopedCURL = base::ScopedGeneric; class CurlSList { public: CurlSList() : list_(nullptr) {} + + CurlSList(const CurlSList&) = delete; + CurlSList& operator=(const CurlSList&) = delete; + ~CurlSList() { if (list_) { Libcurl::CurlSlistFreeAll(list_); @@ -289,14 +294,15 @@ class CurlSList { private: curl_slist* list_; - - DISALLOW_COPY_AND_ASSIGN(CurlSList); }; class ScopedClearString { public: explicit ScopedClearString(std::string* string) : string_(string) {} + ScopedClearString(const ScopedClearString&) = delete; + ScopedClearString& operator=(const ScopedClearString&) = delete; + ~ScopedClearString() { if (string_) { string_->clear(); @@ -307,13 +313,15 @@ class ScopedClearString { private: std::string* string_; - - DISALLOW_COPY_AND_ASSIGN(ScopedClearString); }; class HTTPTransportLibcurl final : public HTTPTransport { public: HTTPTransportLibcurl(); + + HTTPTransportLibcurl(const HTTPTransportLibcurl&) = delete; + HTTPTransportLibcurl& operator=(const HTTPTransportLibcurl&) = delete; + ~HTTPTransportLibcurl() override; // HTTPTransport: @@ -328,8 +336,6 @@ class HTTPTransportLibcurl final : public HTTPTransport { size_t size, size_t nitems, void* userdata); - - DISALLOW_COPY_AND_ASSIGN(HTTPTransportLibcurl); }; HTTPTransportLibcurl::HTTPTransportLibcurl() : HTTPTransport() {} diff --git a/util/net/http_transport_mac.mm b/util/net/http_transport_mac.mm index b9be11c8..e1cfd254 100644 --- a/util/net/http_transport_mac.mm +++ b/util/net/http_transport_mac.mm @@ -113,6 +113,10 @@ class HTTPBodyStreamCFReadStream { : body_stream_(body_stream) { } + HTTPBodyStreamCFReadStream(const HTTPBodyStreamCFReadStream&) = delete; + HTTPBodyStreamCFReadStream& operator=(const HTTPBodyStreamCFReadStream&) = + delete; + // Creates a new NSInputStream, which the caller owns. NSInputStream* CreateInputStream() { CFStreamClientContext context = { @@ -213,19 +217,18 @@ class HTTPBodyStreamCFReadStream { void* info) {} HTTPBodyStream* body_stream_; // weak - - DISALLOW_COPY_AND_ASSIGN(HTTPBodyStreamCFReadStream); }; class HTTPTransportMac final : public HTTPTransport { public: HTTPTransportMac(); + + HTTPTransportMac(const HTTPTransportMac&) = delete; + HTTPTransportMac& operator=(const HTTPTransportMac&) = delete; + ~HTTPTransportMac() override; bool ExecuteSynchronously(std::string* response_body) override; - - private: - DISALLOW_COPY_AND_ASSIGN(HTTPTransportMac); }; HTTPTransportMac::HTTPTransportMac() : HTTPTransport() { diff --git a/util/net/http_transport_socket.cc b/util/net/http_transport_socket.cc index c12702ac..4de92803 100644 --- a/util/net/http_transport_socket.cc +++ b/util/net/http_transport_socket.cc @@ -22,7 +22,6 @@ #include "base/cxx17_backports.h" #include "base/logging.h" -#include "base/macros.h" #include "base/numerics/safe_conversions.h" #include "base/posix/eintr_wrapper.h" #include "base/scoped_generic.h" @@ -47,12 +46,13 @@ constexpr const char kCRLFTerminator[] = "\r\n"; class HTTPTransportSocket final : public HTTPTransport { public: HTTPTransportSocket() = default; + + HTTPTransportSocket(const HTTPTransportSocket&) = delete; + HTTPTransportSocket& operator=(const HTTPTransportSocket&) = delete; + ~HTTPTransportSocket() override = default; bool ExecuteSynchronously(std::string* response_body) override; - - private: - DISALLOW_COPY_AND_ASSIGN(HTTPTransportSocket); }; struct ScopedAddrinfoTraits { @@ -74,6 +74,9 @@ class FdStream : public Stream { public: explicit FdStream(int fd) : fd_(fd) { CHECK(fd_ >= 0); } + FdStream(const FdStream&) = delete; + FdStream& operator=(const FdStream&) = delete; + bool LoggingWrite(const void* data, size_t size) override { return LoggingWriteFile(fd_, data, size); } @@ -88,8 +91,6 @@ class FdStream : public Stream { private: int fd_; - - DISALLOW_COPY_AND_ASSIGN(FdStream); }; #if defined(CRASHPAD_USE_BORINGSSL) @@ -97,6 +98,9 @@ class SSLStream : public Stream { public: SSLStream() = default; + SSLStream(const SSLStream&) = delete; + SSLStream& operator=(const SSLStream&) = delete; + bool Initialize(const base::FilePath& root_cert_path, int sock, const std::string& hostname) { @@ -210,8 +214,6 @@ class SSLStream : public Stream { ScopedSSLCTX ctx_; ScopedSSL ssl_; - - DISALLOW_COPY_AND_ASSIGN(SSLStream); }; #endif @@ -262,6 +264,9 @@ class ScopedSetNonblocking { } } + ScopedSetNonblocking(const ScopedSetNonblocking&) = delete; + ScopedSetNonblocking& operator=(const ScopedSetNonblocking&) = delete; + ~ScopedSetNonblocking() { if (sock_ >= 0) { int flags = fcntl(sock_, F_GETFL, 0); @@ -278,8 +283,6 @@ class ScopedSetNonblocking { private: int sock_; - - DISALLOW_COPY_AND_ASSIGN(ScopedSetNonblocking); }; base::ScopedFD CreateSocket(const std::string& hostname, diff --git a/util/net/http_transport_win.cc b/util/net/http_transport_win.cc index a91d2d22..cb04c2e9 100644 --- a/util/net/http_transport_win.cc +++ b/util/net/http_transport_win.cc @@ -131,12 +131,13 @@ using ScopedHINTERNET = base::ScopedGeneric; class HTTPTransportWin final : public HTTPTransport { public: HTTPTransportWin(); + + HTTPTransportWin(const HTTPTransportWin&) = delete; + HTTPTransportWin& operator=(const HTTPTransportWin&) = delete; + ~HTTPTransportWin() override; bool ExecuteSynchronously(std::string* response_body) override; - - private: - DISALLOW_COPY_AND_ASSIGN(HTTPTransportWin); }; HTTPTransportWin::HTTPTransportWin() : HTTPTransport() { diff --git a/util/numeric/checked_address_range.h b/util/numeric/checked_address_range.h index 40c82390..5279bbc0 100644 --- a/util/numeric/checked_address_range.h +++ b/util/numeric/checked_address_range.h @@ -19,7 +19,6 @@ #include -#include "base/macros.h" #include "build/build_config.h" #include "util/numeric/checked_range.h" diff --git a/util/posix/process_info.h b/util/posix/process_info.h index d144c04b..7a58788d 100644 --- a/util/posix/process_info.h +++ b/util/posix/process_info.h @@ -23,7 +23,6 @@ #include #include -#include "base/macros.h" #include "build/build_config.h" #include "util/misc/initialization_state.h" #include "util/misc/initialization_state_dcheck.h" @@ -42,6 +41,10 @@ namespace crashpad { class ProcessInfo { public: ProcessInfo(); + + ProcessInfo(const ProcessInfo&) = delete; + ProcessInfo& operator=(const ProcessInfo&) = delete; + ~ProcessInfo(); #if defined(OS_LINUX) || defined(OS_CHROMEOS) || defined(OS_ANDROID) || DOXYGEN @@ -189,8 +192,6 @@ class ProcessInfo { mutable InitializationState start_time_initialized_; #endif InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ProcessInfo); }; } // namespace crashpad diff --git a/util/posix/process_info_test.cc b/util/posix/process_info_test.cc index 78061847..1d9b0657 100644 --- a/util/posix/process_info_test.cc +++ b/util/posix/process_info_test.cc @@ -206,6 +206,10 @@ TEST(ProcessInfo, Pid1) { class ProcessInfoForkedTest : public Multiprocess { public: ProcessInfoForkedTest() : Multiprocess() {} + + ProcessInfoForkedTest(const ProcessInfoForkedTest&) = delete; + ProcessInfoForkedTest& operator=(const ProcessInfoForkedTest&) = delete; + ~ProcessInfoForkedTest() {} // Multiprocess: @@ -233,9 +237,6 @@ class ProcessInfoForkedTest : public Multiprocess { // Hang around until the parent is done. CheckedReadFileAtEOF(ReadPipeHandle()); } - - private: - DISALLOW_COPY_AND_ASSIGN(ProcessInfoForkedTest); }; TEST(ProcessInfo, Forked) { diff --git a/util/posix/scoped_mmap.h b/util/posix/scoped_mmap.h index 12f5ceed..706f1e7f 100644 --- a/util/posix/scoped_mmap.h +++ b/util/posix/scoped_mmap.h @@ -15,7 +15,6 @@ #ifndef CRASHPAD_UTIL_POSIX_SCOPED_MMAP_H_ #define CRASHPAD_UTIL_POSIX_SCOPED_MMAP_H_ -#include "base/macros.h" #include #include @@ -34,6 +33,10 @@ class ScopedMmap { //! //! \param can_log `true` if methods of this class may log messages. explicit ScopedMmap(bool can_log = true); + + ScopedMmap(const ScopedMmap&) = delete; + ScopedMmap& operator=(const ScopedMmap&) = delete; + ~ScopedMmap(); //! \brief Releases the memory-mapped region by calling `munmap()`. @@ -109,8 +112,6 @@ class ScopedMmap { void* addr_ = MAP_FAILED; size_t len_ = 0; bool can_log_; - - DISALLOW_COPY_AND_ASSIGN(ScopedMmap); }; } // namespace crashpad diff --git a/util/posix/scoped_mmap_test.cc b/util/posix/scoped_mmap_test.cc index 6509b3ac..f8307cc6 100644 --- a/util/posix/scoped_mmap_test.cc +++ b/util/posix/scoped_mmap_test.cc @@ -59,6 +59,9 @@ class TestCookie { // SetUp() called on it. explicit TestCookie() : address_(&cookie_), cookie_(0) {} + TestCookie(const TestCookie&) = delete; + TestCookie& operator=(const TestCookie&) = delete; + ~TestCookie() {} void SetUp(uint64_t* address) { @@ -78,8 +81,6 @@ class TestCookie { private: uint64_t* address_; uint64_t cookie_; - - DISALLOW_COPY_AND_ASSIGN(TestCookie); }; TEST(ScopedMmap, Mmap) { diff --git a/util/posix/signals.h b/util/posix/signals.h index 368161bf..cfa196bd 100644 --- a/util/posix/signals.h +++ b/util/posix/signals.h @@ -19,7 +19,6 @@ #include -#include "base/macros.h" namespace crashpad { @@ -56,6 +55,9 @@ class Signals { // when an object of this class is given static storage duration. OldActions() = default; + OldActions(const OldActions&) = delete; + OldActions& operator=(const OldActions&) = delete; + //! \brief Returns a `struct sigaction` structure corresponding to the //! given signal. //! @@ -66,10 +68,12 @@ class Signals { // As a small storage optimization, don’t waste any space on a slot for // signal 0, because there is no signal 0. struct sigaction actions_[NSIG - 1]; - - DISALLOW_COPY_AND_ASSIGN(OldActions); }; + Signals() = delete; + Signals(const Signals&) = delete; + Signals& operator=(const Signals&) = delete; + //! \brief Installs a new signal handler. //! //! \param[in] sig The signal number to handle. @@ -235,9 +239,6 @@ class Signals { //! //! \note This function is safe to call from a signal handler. static bool IsTerminateSignal(int sig); - - private: - DISALLOW_IMPLICIT_CONSTRUCTORS(Signals); }; } // namespace crashpad diff --git a/util/posix/signals_test.cc b/util/posix/signals_test.cc index 3538cf2b..d26c2919 100644 --- a/util/posix/signals_test.cc +++ b/util/posix/signals_test.cc @@ -228,6 +228,10 @@ class SignalsTest : public Multiprocess { sig_(sig), test_type_(test_type), signal_source_(signal_source) {} + + SignalsTest(const SignalsTest&) = delete; + SignalsTest& operator=(const SignalsTest&) = delete; + ~SignalsTest() {} private: @@ -314,8 +318,6 @@ class SignalsTest : public Multiprocess { TestType test_type_; SignalSource signal_source_; static Signals::OldActions old_actions_; - - DISALLOW_COPY_AND_ASSIGN(SignalsTest); }; Signals::OldActions SignalsTest::old_actions_; diff --git a/util/process/process_memory_fuchsia.h b/util/process/process_memory_fuchsia.h index 6c9cebaa..6693c5a9 100644 --- a/util/process/process_memory_fuchsia.h +++ b/util/process/process_memory_fuchsia.h @@ -19,7 +19,6 @@ #include -#include "base/macros.h" #include "util/misc/address_types.h" #include "util/misc/initialization_state_dcheck.h" #include "util/process/process_memory.h" @@ -30,6 +29,10 @@ namespace crashpad { class ProcessMemoryFuchsia final : public ProcessMemory { public: ProcessMemoryFuchsia(); + + ProcessMemoryFuchsia(const ProcessMemoryFuchsia&) = delete; + ProcessMemoryFuchsia& operator=(const ProcessMemoryFuchsia&) = delete; + ~ProcessMemoryFuchsia(); //! \brief Initializes this object to read the memory of a process by handle. @@ -50,8 +53,6 @@ class ProcessMemoryFuchsia final : public ProcessMemory { zx::unowned_process process_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ProcessMemoryFuchsia); }; } // namespace crashpad diff --git a/util/process/process_memory_linux.h b/util/process/process_memory_linux.h index 1150f14c..496cf2d5 100644 --- a/util/process/process_memory_linux.h +++ b/util/process/process_memory_linux.h @@ -21,7 +21,6 @@ #include #include "base/files/scoped_file.h" -#include "base/macros.h" #include "util/linux/ptrace_connection.h" #include "util/misc/address_types.h" #include "util/process/process_memory.h" @@ -32,6 +31,10 @@ namespace crashpad { class ProcessMemoryLinux final : public ProcessMemory { public: explicit ProcessMemoryLinux(PtraceConnection* connection); + + ProcessMemoryLinux(const ProcessMemoryLinux&) = delete; + ProcessMemoryLinux& operator=(const ProcessMemoryLinux&) = delete; + ~ProcessMemoryLinux(); private: @@ -39,8 +42,6 @@ class ProcessMemoryLinux final : public ProcessMemory { std::function read_up_to_; base::ScopedFD mem_fd_; - - DISALLOW_COPY_AND_ASSIGN(ProcessMemoryLinux); }; } // namespace crashpad diff --git a/util/process/process_memory_mac.h b/util/process/process_memory_mac.h index 214e4890..ba37383f 100644 --- a/util/process/process_memory_mac.h +++ b/util/process/process_memory_mac.h @@ -22,7 +22,6 @@ #include #include "base/mac/scoped_mach_vm.h" -#include "base/macros.h" #include "util/misc/address_types.h" #include "util/misc/initialization_state_dcheck.h" #include "util/process/process_memory.h" @@ -37,6 +36,9 @@ class ProcessMemoryMac : public ProcessMemory { //! The mapping is maintained until this object is destroyed. class MappedMemory { public: + MappedMemory(const MappedMemory&) = delete; + MappedMemory& operator=(const MappedMemory&) = delete; + ~MappedMemory(); //! \brief Returns a pointer to the data requested by the user. @@ -86,11 +88,13 @@ class ProcessMemoryMac : public ProcessMemory { // The outer class needs to be able to call this class’ private constructor. friend class ProcessMemoryMac; - - DISALLOW_COPY_AND_ASSIGN(MappedMemory); }; ProcessMemoryMac(); + + ProcessMemoryMac(const ProcessMemoryMac&) = delete; + ProcessMemoryMac& operator=(const ProcessMemoryMac&) = delete; + ~ProcessMemoryMac() {} //! \brief Initializes this object to read the memory of a task with the @@ -126,8 +130,6 @@ class ProcessMemoryMac : public ProcessMemory { task_t task_; // weak InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ProcessMemoryMac); }; } // namespace crashpad diff --git a/util/process/process_memory_range.h b/util/process/process_memory_range.h index aabee498..21be7659 100644 --- a/util/process/process_memory_range.h +++ b/util/process/process_memory_range.h @@ -19,7 +19,6 @@ #include -#include "base/macros.h" #include "util/misc/address_types.h" #include "util/misc/initialization_state_dcheck.h" #include "util/numeric/checked_vm_address_range.h" @@ -31,6 +30,10 @@ namespace crashpad { class ProcessMemoryRange { public: ProcessMemoryRange(); + + ProcessMemoryRange(const ProcessMemoryRange&) = delete; + ProcessMemoryRange& operator=(const ProcessMemoryRange&) = delete; + ~ProcessMemoryRange(); //! \brief Initializes this object. @@ -120,8 +123,6 @@ class ProcessMemoryRange { const ProcessMemory* memory_; // weak CheckedVMAddressRange range_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ProcessMemoryRange); }; } // namespace crashpad diff --git a/util/process/process_memory_sanitized.h b/util/process/process_memory_sanitized.h index e050a47f..a406e014 100644 --- a/util/process/process_memory_sanitized.h +++ b/util/process/process_memory_sanitized.h @@ -20,7 +20,6 @@ #include #include -#include "base/macros.h" #include "util/misc/address_types.h" #include "util/misc/initialization_state_dcheck.h" #include "util/process/process_memory.h" @@ -31,6 +30,10 @@ namespace crashpad { class ProcessMemorySanitized final : public ProcessMemory { public: ProcessMemorySanitized(); + + ProcessMemorySanitized(const ProcessMemorySanitized&) = delete; + ProcessMemorySanitized& operator=(const ProcessMemorySanitized&) = delete; + ~ProcessMemorySanitized(); //! \brief Initializes this object to read memory from the underlying @@ -53,8 +56,6 @@ class ProcessMemorySanitized final : public ProcessMemory { const ProcessMemory* memory_; InitializationStateDcheck initialized_; std::vector> allowed_ranges_; - - DISALLOW_COPY_AND_ASSIGN(ProcessMemorySanitized); }; } // namespace crashpad diff --git a/util/process/process_memory_test.cc b/util/process/process_memory_test.cc index 6857b040..fe9971bc 100644 --- a/util/process/process_memory_test.cc +++ b/util/process/process_memory_test.cc @@ -131,6 +131,9 @@ class ReadTest : public MultiprocessAdaptor { SetChildTestMainFunction("ReadTestChild"); } + ReadTest(const ReadTest&) = delete; + ReadTest& operator=(const ReadTest&) = delete; + void RunAgainstSelf() { size_t region_size; std::unique_ptr region; @@ -209,8 +212,6 @@ class ReadTest : public MultiprocessAdaptor { EXPECT_EQ(result[0], 2); EXPECT_EQ(result[1], 'J'); } - - DISALLOW_COPY_AND_ASSIGN(ReadTest); }; TEST(ProcessMemory, ReadSelf) { @@ -279,6 +280,9 @@ class ReadCStringTest : public MultiprocessAdaptor { SetChildTestMainFunction("ReadCStringTestChild"); } + ReadCStringTest(const ReadCStringTest&) = delete; + ReadCStringTest& operator=(const ReadCStringTest&) = delete; + void RunAgainstSelf() { const char* const_empty; const char* const_short; @@ -357,8 +361,6 @@ class ReadCStringTest : public MultiprocessAdaptor { } const bool limit_size_; - - DISALLOW_COPY_AND_ASSIGN(ReadCStringTest); }; TEST(ProcessMemory, ReadCStringSelf) { @@ -406,6 +408,9 @@ class ReadUnmappedTest : public MultiprocessAdaptor { SetChildTestMainFunction("ReadUnmappedChildMain"); } + ReadUnmappedTest(const ReadUnmappedTest&) = delete; + ReadUnmappedTest& operator=(const ReadUnmappedTest&) = delete; + void RunAgainstChild() { Run(); } private: @@ -437,8 +442,6 @@ class ReadUnmappedTest : public MultiprocessAdaptor { EXPECT_FALSE(memory.Read(page_addr2, base::GetPageSize(), result.get())); EXPECT_FALSE(memory.Read(page_addr2 - 1, 2, result.get())); } - - DISALLOW_COPY_AND_ASSIGN(ReadUnmappedTest); }; TEST(ProcessMemory, ReadUnmappedChild) { @@ -534,6 +537,9 @@ class ReadCStringUnmappedTest : public MultiprocessAdaptor { SetChildTestMainFunction("ReadCStringUnmappedChildMain"); } + ReadCStringUnmappedTest(const ReadCStringUnmappedTest&) = delete; + ReadCStringUnmappedTest& operator=(const ReadCStringUnmappedTest&) = delete; + void RunAgainstChild() { Run(); } private: @@ -582,8 +588,6 @@ class ReadCStringUnmappedTest : public MultiprocessAdaptor { } const bool limit_size_; - - DISALLOW_COPY_AND_ASSIGN(ReadCStringUnmappedTest); }; TEST(ProcessMemory, ReadCStringUnmappedChild) { diff --git a/util/process/process_memory_win.h b/util/process/process_memory_win.h index 2856900e..919946e5 100644 --- a/util/process/process_memory_win.h +++ b/util/process/process_memory_win.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" #include "util/misc/address_types.h" #include "util/misc/initialization_state_dcheck.h" #include "util/process/process_memory.h" @@ -29,6 +28,10 @@ namespace crashpad { class ProcessMemoryWin final : public ProcessMemory { public: ProcessMemoryWin(); + + ProcessMemoryWin(const ProcessMemoryWin&) = delete; + ProcessMemoryWin& operator=(const ProcessMemoryWin&) = delete; + ~ProcessMemoryWin(); //! \brief Initializes this object to read the memory of a process with the @@ -57,8 +60,6 @@ class ProcessMemoryWin final : public ProcessMemory { HANDLE handle_; ProcessInfo process_info_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ProcessMemoryWin); }; } // namespace crashpad diff --git a/util/stdlib/thread_safe_vector.h b/util/stdlib/thread_safe_vector.h index f97024d0..64a4bd2c 100644 --- a/util/stdlib/thread_safe_vector.h +++ b/util/stdlib/thread_safe_vector.h @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" #include "base/synchronization/lock.h" namespace crashpad { @@ -32,6 +31,10 @@ template class ThreadSafeVector { public: ThreadSafeVector() : vector_(), lock_() {} + + ThreadSafeVector(const ThreadSafeVector&) = delete; + ThreadSafeVector& operator=(const ThreadSafeVector&) = delete; + ~ThreadSafeVector() {} //! \brief Wraps `std::vector<>::%push_back()`. @@ -54,8 +57,6 @@ class ThreadSafeVector { private: std::vector vector_; base::Lock lock_; - - DISALLOW_COPY_AND_ASSIGN(ThreadSafeVector); }; } // namespace crashpad diff --git a/util/stdlib/thread_safe_vector_test.cc b/util/stdlib/thread_safe_vector_test.cc index f589ca68..89624304 100644 --- a/util/stdlib/thread_safe_vector_test.cc +++ b/util/stdlib/thread_safe_vector_test.cc @@ -27,6 +27,11 @@ constexpr int kElementsPerThread = 100; class ThreadSafeVectorTestThread : public Thread { public: ThreadSafeVectorTestThread() : thread_safe_vector_(nullptr), start_(0) {} + + ThreadSafeVectorTestThread(const ThreadSafeVectorTestThread&) = delete; + ThreadSafeVectorTestThread& operator=(const ThreadSafeVectorTestThread&) = + delete; + ~ThreadSafeVectorTestThread() {} void SetTestParameters(ThreadSafeVector* thread_safe_vector, int start) { @@ -44,8 +49,6 @@ class ThreadSafeVectorTestThread : public Thread { private: ThreadSafeVector* thread_safe_vector_; int start_; - - DISALLOW_COPY_AND_ASSIGN(ThreadSafeVectorTestThread); }; TEST(ThreadSafeVector, ThreadSafeVector) { diff --git a/util/stream/base94_output_stream.h b/util/stream/base94_output_stream.h index 9d27b2ac..2f26d1cd 100644 --- a/util/stream/base94_output_stream.h +++ b/util/stream/base94_output_stream.h @@ -21,7 +21,6 @@ #include #include -#include "base/macros.h" #include "util/stream/output_stream_interface.h" namespace crashpad { @@ -47,6 +46,10 @@ class Base94OutputStream : public OutputStreamInterface { //! \param[in] output_stream The output_stream that this object writes to. Base94OutputStream(Mode mode, std::unique_ptr output_stream); + + Base94OutputStream(const Base94OutputStream&) = delete; + Base94OutputStream& operator=(const Base94OutputStream&) = delete; + ~Base94OutputStream() override; // OutputStreamInterface: @@ -70,8 +73,6 @@ class Base94OutputStream : public OutputStreamInterface { char symbol_buffer_; bool flush_needed_; bool flushed_; - - DISALLOW_COPY_AND_ASSIGN(Base94OutputStream); }; } // namespace crashpad diff --git a/util/stream/base94_output_stream_test.cc b/util/stream/base94_output_stream_test.cc index c15d6972..d0a29855 100644 --- a/util/stream/base94_output_stream_test.cc +++ b/util/stream/base94_output_stream_test.cc @@ -20,7 +20,6 @@ #include #include "base/cxx17_backports.h" -#include "base/macros.h" #include "base/rand_util.h" #include "base/strings/stringprintf.h" #include "gtest/gtest.h" @@ -50,6 +49,9 @@ class Base94OutputStreamTest : public testing::Test { public: Base94OutputStreamTest() {} + Base94OutputStreamTest(const Base94OutputStreamTest&) = delete; + Base94OutputStreamTest& operator=(const Base94OutputStreamTest&) = delete; + protected: void SetUp() override { auto output_stream = std::make_unique(); @@ -127,8 +129,6 @@ class Base94OutputStreamTest : public testing::Test { TestOutputStream* round_trip_test_output_stream_; std::unique_ptr input_; std::unique_ptr deterministic_input_; - - DISALLOW_COPY_AND_ASSIGN(Base94OutputStreamTest); }; TEST_F(Base94OutputStreamTest, Encoding) { diff --git a/util/stream/file_encoder.h b/util/stream/file_encoder.h index 2f34b0bf..72ea3077 100644 --- a/util/stream/file_encoder.h +++ b/util/stream/file_encoder.h @@ -16,7 +16,6 @@ #define CRASHPAD_UTIL_STREAM_FILE_ENCODER_H_ #include "base/files/file_path.h" -#include "base/macros.h" namespace crashpad { @@ -38,6 +37,10 @@ class FileEncoder { FileEncoder(Mode mode, const base::FilePath& input_path, const base::FilePath& output_path); + + FileEncoder(const FileEncoder&) = delete; + FileEncoder& operator=(const FileEncoder&) = delete; + ~FileEncoder(); //! \brief Encode/decode the data from \a input_path_ file according work @@ -50,8 +53,6 @@ class FileEncoder { Mode mode_; base::FilePath input_path_; base::FilePath output_path_; - - DISALLOW_COPY_AND_ASSIGN(FileEncoder); }; } // namespace crashpad diff --git a/util/stream/file_encoder_test.cc b/util/stream/file_encoder_test.cc index ff989146..23d78dd6 100644 --- a/util/stream/file_encoder_test.cc +++ b/util/stream/file_encoder_test.cc @@ -19,7 +19,6 @@ #include #include "base/files/file_path.h" -#include "base/macros.h" #include "gtest/gtest.h" #include "test/scoped_temp_dir.h" #include "util/file/file_io.h" diff --git a/util/stream/file_output_stream.h b/util/stream/file_output_stream.h index 128ccd5e..d7fc017f 100644 --- a/util/stream/file_output_stream.h +++ b/util/stream/file_output_stream.h @@ -15,7 +15,6 @@ #ifndef CRASHPAD_UTIL_STREAM_FILE_OUTPUT_STREAM_H_ #define CRASHPAD_UTIL_STREAM_FILE_OUTPUT_STREAM_H_ -#include "base/macros.h" #include "util/file/file_io.h" #include "util/file/file_writer.h" #include "util/stream/output_stream_interface.h" @@ -27,6 +26,10 @@ class FileOutputStream : public OutputStreamInterface { public: //! \param[in] file_handle The file that this object writes to. explicit FileOutputStream(FileHandle file_handle); + + FileOutputStream(const FileOutputStream&) = delete; + FileOutputStream& operator=(const FileOutputStream&) = delete; + ~FileOutputStream(); // OutputStream. @@ -37,8 +40,6 @@ class FileOutputStream : public OutputStreamInterface { WeakFileHandleFileWriter writer_; bool flush_needed_; bool flushed_; - - DISALLOW_COPY_AND_ASSIGN(FileOutputStream); }; } // namespace crashpad diff --git a/util/stream/log_output_stream.h b/util/stream/log_output_stream.h index a1b6df3a..a90a1565 100644 --- a/util/stream/log_output_stream.h +++ b/util/stream/log_output_stream.h @@ -21,7 +21,6 @@ #include #include -#include "base/macros.h" #include "util/stream/output_stream_interface.h" namespace crashpad { @@ -51,6 +50,10 @@ class LogOutputStream : public OutputStreamInterface { }; explicit LogOutputStream(std::unique_ptr delegate); + + LogOutputStream(const LogOutputStream&) = delete; + LogOutputStream& operator=(const LogOutputStream&) = delete; + ~LogOutputStream() override; // OutputStreamInterface: @@ -68,8 +71,6 @@ class LogOutputStream : public OutputStreamInterface { size_t output_count_; bool flush_needed_; bool flushed_; - - DISALLOW_COPY_AND_ASSIGN(LogOutputStream); }; } // namespace crashpad diff --git a/util/stream/log_output_stream_test.cc b/util/stream/log_output_stream_test.cc index 9faf34b8..7c625134 100644 --- a/util/stream/log_output_stream_test.cc +++ b/util/stream/log_output_stream_test.cc @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" #include "gtest/gtest.h" namespace crashpad { @@ -55,6 +54,9 @@ class LogOutputStreamTest : public testing::Test { public: LogOutputStreamTest() {} + LogOutputStreamTest(const LogOutputStreamTest&) = delete; + LogOutputStreamTest& operator=(const LogOutputStreamTest&) = delete; + protected: void SetUp() override { log_stream_ = std::make_unique( @@ -77,8 +79,6 @@ class LogOutputStreamTest : public testing::Test { std::unique_ptr log_stream_; std::string test_log_output_; std::unique_ptr deterministic_input_; - - DISALLOW_COPY_AND_ASSIGN(LogOutputStreamTest); }; TEST_F(LogOutputStreamTest, WriteShortLog) { diff --git a/util/stream/test_output_stream.h b/util/stream/test_output_stream.h index dcd0d45d..e8f9cf9d 100644 --- a/util/stream/test_output_stream.h +++ b/util/stream/test_output_stream.h @@ -20,7 +20,6 @@ #include -#include "base/macros.h" #include "util/stream/output_stream_interface.h" namespace crashpad { @@ -30,6 +29,10 @@ namespace test { class TestOutputStream : public OutputStreamInterface { public: TestOutputStream(); + + TestOutputStream(const TestOutputStream&) = delete; + TestOutputStream& operator=(const TestOutputStream&) = delete; + ~TestOutputStream() override; // OutputStreamInterface: @@ -56,8 +59,6 @@ class TestOutputStream : public OutputStreamInterface { size_t write_count_; size_t flush_count_; bool flush_needed_; - - DISALLOW_COPY_AND_ASSIGN(TestOutputStream); }; } // namespace test diff --git a/util/stream/zlib_output_stream.h b/util/stream/zlib_output_stream.h index d8e62a6c..62253ee9 100644 --- a/util/stream/zlib_output_stream.h +++ b/util/stream/zlib_output_stream.h @@ -20,7 +20,6 @@ #include -#include "base/macros.h" #include "third_party/zlib/zlib_crashpad.h" #include "util/misc/initialization_state.h" #include "util/stream/output_stream_interface.h" @@ -56,6 +55,10 @@ class ZlibOutputStream : public OutputStreamInterface { //! ZlibOutputStream(Mode mode, std::unique_ptr output_stream); + + ZlibOutputStream(const ZlibOutputStream&) = delete; + ZlibOutputStream& operator=(const ZlibOutputStream&) = delete; + ~ZlibOutputStream() override; // OutputStreamInterface: @@ -73,8 +76,6 @@ class ZlibOutputStream : public OutputStreamInterface { Mode mode_; InitializationState initialized_; // protects zlib_stream_ bool flush_needed_; - - DISALLOW_COPY_AND_ASSIGN(ZlibOutputStream); }; } // namespace crashpad diff --git a/util/stream/zlib_output_stream_test.cc b/util/stream/zlib_output_stream_test.cc index 194f811d..306a61b1 100644 --- a/util/stream/zlib_output_stream_test.cc +++ b/util/stream/zlib_output_stream_test.cc @@ -42,6 +42,9 @@ class ZlibOutputStreamTest : public testing::Test { std::move(test_output_stream))); } + ZlibOutputStreamTest(const ZlibOutputStreamTest&) = delete; + ZlibOutputStreamTest& operator=(const ZlibOutputStreamTest&) = delete; + const uint8_t* BuildDeterministicInput(size_t size) { deterministic_input_ = std::make_unique(size); uint8_t* deterministic_input_base = deterministic_input_.get(); @@ -69,8 +72,6 @@ class ZlibOutputStreamTest : public testing::Test { std::unique_ptr input_; std::unique_ptr deterministic_input_; TestOutputStream* test_output_stream_; // weak, owned by zlib_output_stream_ - - DISALLOW_COPY_AND_ASSIGN(ZlibOutputStreamTest); }; TEST_F(ZlibOutputStreamTest, WriteDeterministicShortData) { diff --git a/util/thread/stoppable.h b/util/thread/stoppable.h index e7a51277..62bb40bd 100644 --- a/util/thread/stoppable.h +++ b/util/thread/stoppable.h @@ -15,7 +15,6 @@ #ifndef CRASHPAD_UTIL_THREAD_STOPPABLE_H_ #define CRASHPAD_UTIL_THREAD_STOPPABLE_H_ -#include "base/macros.h" namespace crashpad { diff --git a/util/thread/thread.h b/util/thread/thread.h index 595d308e..e06ca3c9 100644 --- a/util/thread/thread.h +++ b/util/thread/thread.h @@ -15,7 +15,6 @@ #ifndef CRASHPAD_UTIL_THREAD_THREAD_H_ #define CRASHPAD_UTIL_THREAD_THREAD_H_ -#include "base/macros.h" #include "build/build_config.h" #if defined(OS_POSIX) @@ -31,6 +30,10 @@ namespace crashpad { class Thread { public: Thread(); + + Thread(const Thread&) = delete; + Thread& operator=(const Thread&) = delete; + virtual ~Thread(); //! \brief Create a platform thread, and run ThreadMain() on that thread. Must @@ -58,8 +61,6 @@ class Thread { #elif defined(OS_WIN) HANDLE platform_thread_; #endif - - DISALLOW_COPY_AND_ASSIGN(Thread); }; } // namespace crashpad diff --git a/util/thread/thread_log_messages.cc b/util/thread/thread_log_messages.cc index 70680b31..230bb87a 100644 --- a/util/thread/thread_log_messages.cc +++ b/util/thread/thread_log_messages.cc @@ -34,6 +34,9 @@ namespace { // object of this class exists. class ThreadLogMessagesMaster { public: + ThreadLogMessagesMaster(const ThreadLogMessagesMaster&) = delete; + ThreadLogMessagesMaster& operator=(const ThreadLogMessagesMaster&) = delete; + void SetThreadMessageList(std::vector* message_list) { DCHECK_EQ(logging::GetLogMessageHandler(), &LogMessageHandler); DCHECK_NE(tls_.Get() != nullptr, message_list != nullptr); @@ -70,8 +73,6 @@ class ThreadLogMessagesMaster { } base::ThreadLocalStorage::Slot tls_; - - DISALLOW_COPY_AND_ASSIGN(ThreadLogMessagesMaster); }; } // namespace diff --git a/util/thread/thread_log_messages.h b/util/thread/thread_log_messages.h index e8eef358..67bee620 100644 --- a/util/thread/thread_log_messages.h +++ b/util/thread/thread_log_messages.h @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" namespace crashpad { @@ -31,6 +30,10 @@ namespace crashpad { class ThreadLogMessages { public: ThreadLogMessages(); + + ThreadLogMessages(const ThreadLogMessages&) = delete; + ThreadLogMessages& operator=(const ThreadLogMessages&) = delete; + ~ThreadLogMessages(); //! \return The log messages collected on the thread that this object was @@ -39,8 +42,6 @@ class ThreadLogMessages { private: std::vector log_messages_; - - DISALLOW_COPY_AND_ASSIGN(ThreadLogMessages); }; } // namespace crashpad diff --git a/util/thread/thread_log_messages_test.cc b/util/thread/thread_log_messages_test.cc index 143e4c13..f3dc1a66 100644 --- a/util/thread/thread_log_messages_test.cc +++ b/util/thread/thread_log_messages_test.cc @@ -104,6 +104,10 @@ TEST(ThreadLogMessages, Basic) { class LoggingTestThread : public Thread { public: LoggingTestThread() : thread_number_(0), start_(0), count_(0) {} + + LoggingTestThread(const LoggingTestThread&) = delete; + LoggingTestThread& operator=(const LoggingTestThread&) = delete; + ~LoggingTestThread() override {} void Initialize(size_t thread_number, int start, int count) { @@ -137,8 +141,6 @@ class LoggingTestThread : public Thread { size_t thread_number_; int start_; int count_; - - DISALLOW_COPY_AND_ASSIGN(LoggingTestThread); }; TEST(ThreadLogMessages, Multithreaded) { diff --git a/util/thread/thread_test.cc b/util/thread/thread_test.cc index 47a711c0..f2ea345f 100644 --- a/util/thread/thread_test.cc +++ b/util/thread/thread_test.cc @@ -24,31 +24,39 @@ namespace { class NoopThread : public Thread { public: NoopThread() {} + + NoopThread(const NoopThread&) = delete; + NoopThread& operator=(const NoopThread&) = delete; + ~NoopThread() override {} private: void ThreadMain() override {} - - DISALLOW_COPY_AND_ASSIGN(NoopThread); }; class WaitThread : public Thread { public: explicit WaitThread(Semaphore* semaphore) : semaphore_(semaphore) {} + + WaitThread(const WaitThread&) = delete; + WaitThread& operator=(const WaitThread&) = delete; + ~WaitThread() override {} private: void ThreadMain() override { semaphore_->Wait(); } Semaphore* semaphore_; - - DISALLOW_COPY_AND_ASSIGN(WaitThread); }; class JoinAndSignalThread : public Thread { public: JoinAndSignalThread(Thread* thread, Semaphore* semaphore) : thread_(thread), semaphore_(semaphore) {} + + JoinAndSignalThread(const JoinAndSignalThread&) = delete; + JoinAndSignalThread& operator=(const JoinAndSignalThread&) = delete; + ~JoinAndSignalThread() override {} private: @@ -59,8 +67,6 @@ class JoinAndSignalThread : public Thread { Thread* thread_; Semaphore* semaphore_; - - DISALLOW_COPY_AND_ASSIGN(JoinAndSignalThread); }; TEST(ThreadTest, NoStart) { diff --git a/util/thread/worker_thread.h b/util/thread/worker_thread.h index 0fae0090..a07fd7d5 100644 --- a/util/thread/worker_thread.h +++ b/util/thread/worker_thread.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" #include "util/synchronization/semaphore.h" namespace crashpad { @@ -53,6 +52,10 @@ class WorkerThread { //! called. //! \param[in] delegate The work delegate to invoke every interval. WorkerThread(double work_interval, Delegate* delegate); + + WorkerThread(const WorkerThread&) = delete; + WorkerThread& operator=(const WorkerThread&) = delete; + ~WorkerThread(); //! \brief Starts the worker thread. @@ -93,8 +96,6 @@ class WorkerThread { std::unique_ptr impl_; bool running_; bool do_work_now_; - - DISALLOW_COPY_AND_ASSIGN(WorkerThread); }; } // namespace crashpad diff --git a/util/thread/worker_thread_test.cc b/util/thread/worker_thread_test.cc index 4e4fbf9a..811d09c3 100644 --- a/util/thread/worker_thread_test.cc +++ b/util/thread/worker_thread_test.cc @@ -27,6 +27,10 @@ constexpr uint64_t kNanosecondsPerSecond = static_cast(1E9); class WorkDelegate : public WorkerThread::Delegate { public: WorkDelegate() {} + + WorkDelegate(const WorkDelegate&) = delete; + WorkDelegate& operator=(const WorkDelegate&) = delete; + ~WorkDelegate() {} void DoWork(const WorkerThread* thread) override { @@ -53,8 +57,6 @@ class WorkDelegate : public WorkerThread::Delegate { Semaphore semaphore_{0}; int work_count_ = 0; int waiting_for_count_ = -1; - - DISALLOW_COPY_AND_ASSIGN(WorkDelegate); }; TEST(WorkerThread, DoWork) { diff --git a/util/win/exception_handler_server.cc b/util/win/exception_handler_server.cc index 9394256e..92d5c5d4 100644 --- a/util/win/exception_handler_server.cc +++ b/util/win/exception_handler_server.cc @@ -78,6 +78,9 @@ class PipeServiceContext { clients_(clients), shutdown_token_(shutdown_token) {} + PipeServiceContext(const PipeServiceContext&) = delete; + PipeServiceContext& operator=(const PipeServiceContext&) = delete; + HANDLE port() const { return port_; } HANDLE pipe() const { return pipe_.get(); } ExceptionHandlerServer::Delegate* delegate() const { return delegate_; } @@ -92,8 +95,6 @@ class PipeServiceContext { base::Lock* clients_lock_; // weak std::set* clients_; // weak uint64_t shutdown_token_; - - DISALLOW_COPY_AND_ASSIGN(PipeServiceContext); }; //! \brief The context data for registered threadpool waits. @@ -137,6 +138,9 @@ class ClientData { process_end_callback); } + ClientData(const ClientData&) = delete; + ClientData& operator=(const ClientData&) = delete; + ~ClientData() { // It is important that this only access the threadpool waits (it's called // from the main thread) until the waits are unregistered, to ensure that @@ -230,8 +234,6 @@ class ClientData { WinVMAddress crash_exception_information_address_; WinVMAddress non_crash_exception_information_address_; WinVMAddress debug_critical_section_address_; - - DISALLOW_COPY_AND_ASSIGN(ClientData); }; } // namespace internal diff --git a/util/win/exception_handler_server.h b/util/win/exception_handler_server.h index 994cdba4..6d9a367c 100644 --- a/util/win/exception_handler_server.h +++ b/util/win/exception_handler_server.h @@ -18,7 +18,6 @@ #include #include -#include "base/macros.h" #include "base/synchronization/lock.h" #include "util/file/file_io.h" #include "util/win/address_types.h" @@ -70,6 +69,9 @@ class ExceptionHandlerServer { //! although Run() will always wait for the first client to connect. explicit ExceptionHandlerServer(bool persistent); + ExceptionHandlerServer(const ExceptionHandlerServer&) = delete; + ExceptionHandlerServer& operator=(const ExceptionHandlerServer&) = delete; + ~ExceptionHandlerServer(); //! \brief Sets the pipe name to listen for client registrations on. @@ -131,8 +133,6 @@ class ExceptionHandlerServer { std::set clients_; bool persistent_; - - DISALLOW_COPY_AND_ASSIGN(ExceptionHandlerServer); }; } // namespace crashpad diff --git a/util/win/exception_handler_server_test.cc b/util/win/exception_handler_server_test.cc index ce316774..ed83e16b 100644 --- a/util/win/exception_handler_server_test.cc +++ b/util/win/exception_handler_server_test.cc @@ -20,7 +20,6 @@ #include #include -#include "base/macros.h" #include "base/strings/utf_string_conversions.h" #include "client/crashpad_client.h" #include "gtest/gtest.h" @@ -41,6 +40,10 @@ class RunServerThread : public Thread { RunServerThread(ExceptionHandlerServer* server, ExceptionHandlerServer::Delegate* delegate) : server_(server), delegate_(delegate) {} + + RunServerThread(const RunServerThread&) = delete; + RunServerThread& operator=(const RunServerThread&) = delete; + ~RunServerThread() override {} private: @@ -49,13 +52,15 @@ class RunServerThread : public Thread { ExceptionHandlerServer* server_; ExceptionHandlerServer::Delegate* delegate_; - - DISALLOW_COPY_AND_ASSIGN(RunServerThread); }; class TestDelegate : public ExceptionHandlerServer::Delegate { public: explicit TestDelegate(HANDLE server_ready) : server_ready_(server_ready) {} + + TestDelegate(const TestDelegate&) = delete; + TestDelegate& operator=(const TestDelegate&) = delete; + ~TestDelegate() {} void ExceptionHandlerServerStarted() override { @@ -72,8 +77,6 @@ class TestDelegate : public ExceptionHandlerServer::Delegate { private: HANDLE server_ready_; // weak - - DISALLOW_COPY_AND_ASSIGN(TestDelegate); }; class ExceptionHandlerServerTest : public testing::Test { @@ -87,6 +90,10 @@ class ExceptionHandlerServerTest : public testing::Test { server_.SetPipeName(pipe_name_); } + ExceptionHandlerServerTest(const ExceptionHandlerServerTest&) = delete; + ExceptionHandlerServerTest& operator=(const ExceptionHandlerServerTest&) = + delete; + TestDelegate& delegate() { return delegate_; } ExceptionHandlerServer& server() { return server_; } Thread& server_thread() { return server_thread_; } @@ -98,8 +105,6 @@ class ExceptionHandlerServerTest : public testing::Test { ScopedKernelHANDLE server_ready_; TestDelegate delegate_; RunServerThread server_thread_; - - DISALLOW_COPY_AND_ASSIGN(ExceptionHandlerServerTest); }; // During destruction, ensures that the server is stopped and the background @@ -108,6 +113,11 @@ class ScopedStopServerAndJoinThread { public: ScopedStopServerAndJoinThread(ExceptionHandlerServer* server, Thread* thread) : server_(server), thread_(thread) {} + + ScopedStopServerAndJoinThread(const ScopedStopServerAndJoinThread&) = delete; + ScopedStopServerAndJoinThread& operator=( + const ScopedStopServerAndJoinThread&) = delete; + ~ScopedStopServerAndJoinThread() { server_->Stop(); thread_->Join(); @@ -116,7 +126,6 @@ class ScopedStopServerAndJoinThread { private: ExceptionHandlerServer* server_; Thread* thread_; - DISALLOW_COPY_AND_ASSIGN(ScopedStopServerAndJoinThread); }; TEST_F(ExceptionHandlerServerTest, Instantiate) { @@ -163,6 +172,9 @@ class TestClient final : public WinChildProcess { public: TestClient() : WinChildProcess() {} + TestClient(const TestClient&) = delete; + TestClient& operator=(const TestClient&) = delete; + ~TestClient() {} private: @@ -176,8 +188,6 @@ class TestClient final : public WinChildProcess { WriteWString(WritePipeHandle(), L"OK"); return EXIT_SUCCESS; } - - DISALLOW_COPY_AND_ASSIGN(TestClient); }; TEST_F(ExceptionHandlerServerTest, MultipleConnections) { diff --git a/util/win/initial_client_data.h b/util/win/initial_client_data.h index f686959e..856de8d8 100644 --- a/util/win/initial_client_data.h +++ b/util/win/initial_client_data.h @@ -19,7 +19,6 @@ #include -#include "base/macros.h" #include "util/win/address_types.h" namespace crashpad { @@ -67,6 +66,9 @@ class InitialClientData { WinVMAddress non_crash_exception_information, WinVMAddress debug_critical_section_address); + InitialClientData(const InitialClientData&) = delete; + InitialClientData& operator=(const InitialClientData&) = delete; + //! \brief Returns whether the object has been initialized successfully. bool IsValid() const { return is_valid_; } @@ -107,8 +109,6 @@ class InitialClientData { HANDLE first_pipe_instance_; HANDLE client_process_; bool is_valid_; - - DISALLOW_COPY_AND_ASSIGN(InitialClientData); }; } // namespace crashpad diff --git a/util/win/ntstatus_logging.h b/util/win/ntstatus_logging.h index 7eececc9..24e6d90a 100644 --- a/util/win/ntstatus_logging.h +++ b/util/win/ntstatus_logging.h @@ -18,7 +18,6 @@ #include #include "base/logging.h" -#include "base/macros.h" namespace logging { @@ -32,12 +31,14 @@ class NtstatusLogMessage : public logging::LogMessage { int line, LogSeverity severity, DWORD ntstatus); + + NtstatusLogMessage(const NtstatusLogMessage&) = delete; + NtstatusLogMessage& operator=(const NtstatusLogMessage&) = delete; + ~NtstatusLogMessage(); private: DWORD ntstatus_; - - DISALLOW_COPY_AND_ASSIGN(NtstatusLogMessage); }; } // namespace logging diff --git a/util/win/process_info.h b/util/win/process_info.h index afbe1462..7b28a65f 100644 --- a/util/win/process_info.h +++ b/util/win/process_info.h @@ -21,7 +21,6 @@ #include #include -#include "base/macros.h" #include "util/misc/initialization_state_dcheck.h" #include "util/numeric/checked_range.h" #include "util/process/process_id.h" @@ -87,6 +86,10 @@ class ProcessInfo { }; ProcessInfo(); + + ProcessInfo(const ProcessInfo&) = delete; + ProcessInfo& operator=(const ProcessInfo&) = delete; + ~ProcessInfo(); //! \brief Initializes this object with information about the given @@ -202,8 +205,6 @@ class ProcessInfo { bool is_64_bit_; bool is_wow64_; InitializationStateDcheck initialized_; - - DISALLOW_COPY_AND_ASSIGN(ProcessInfo); }; //! \brief Given a memory map of a process, and a range to be read from the diff --git a/util/win/safe_terminate_process_test.cc b/util/win/safe_terminate_process_test.cc index 6904d030..6ca5aa6d 100644 --- a/util/win/safe_terminate_process_test.cc +++ b/util/win/safe_terminate_process_test.cc @@ -22,7 +22,6 @@ #include "base/check.h" #include "base/cxx17_backports.h" #include "base/files/file_path.h" -#include "base/macros.h" #include "build/build_config.h" #include "gtest/gtest.h" #include "test/errors.h" @@ -46,6 +45,9 @@ class ScopedExecutablePatch { memcpy(target_, source, size_); } + ScopedExecutablePatch(const ScopedExecutablePatch&) = delete; + ScopedExecutablePatch& operator=(const ScopedExecutablePatch&) = delete; + ~ScopedExecutablePatch() { ScopedVirtualProtectRWX protect_rwx(target_, size_); memcpy(target_, original_.get(), size_); @@ -71,6 +73,9 @@ class ScopedExecutablePatch { << "VirtualProtect"; } + ScopedVirtualProtectRWX(const ScopedVirtualProtectRWX&) = delete; + ScopedVirtualProtectRWX& operator=(const ScopedVirtualProtectRWX&) = delete; + ~ScopedVirtualProtectRWX() { DWORD last_protect_; PCHECK(VirtualProtect(address_, size_, old_protect_, &last_protect_)) @@ -81,15 +86,11 @@ class ScopedExecutablePatch { void* address_; size_t size_; DWORD old_protect_; - - DISALLOW_COPY_AND_ASSIGN(ScopedVirtualProtectRWX); }; std::unique_ptr original_; void* target_; size_t size_; - - DISALLOW_COPY_AND_ASSIGN(ScopedExecutablePatch); }; // SafeTerminateProcess is calling convention specific only for x86. diff --git a/util/win/scoped_process_suspend.h b/util/win/scoped_process_suspend.h index 913886e5..e809723f 100644 --- a/util/win/scoped_process_suspend.h +++ b/util/win/scoped_process_suspend.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" namespace crashpad { @@ -33,6 +32,10 @@ class ScopedProcessSuspend { public: //! Does not take ownership of \a process. explicit ScopedProcessSuspend(HANDLE process); + + ScopedProcessSuspend(const ScopedProcessSuspend&) = delete; + ScopedProcessSuspend& operator=(const ScopedProcessSuspend&) = delete; + ~ScopedProcessSuspend(); //! \brief Informs the object that the suspended process may be terminating, @@ -47,8 +50,6 @@ class ScopedProcessSuspend { private: HANDLE process_; bool tolerate_termination_ = false; - - DISALLOW_COPY_AND_ASSIGN(ScopedProcessSuspend); }; } // namespace crashpad diff --git a/util/win/scoped_process_suspend_test.cc b/util/win/scoped_process_suspend_test.cc index 2d0f5a0b..d8ca62f8 100644 --- a/util/win/scoped_process_suspend_test.cc +++ b/util/win/scoped_process_suspend_test.cc @@ -75,6 +75,10 @@ bool SuspendCountMatches(HANDLE process, DWORD desired_suspend_count) { class ScopedProcessSuspendTest final : public WinChildProcess { public: ScopedProcessSuspendTest() : WinChildProcess() {} + + ScopedProcessSuspendTest(const ScopedProcessSuspendTest&) = delete; + ScopedProcessSuspendTest& operator=(const ScopedProcessSuspendTest&) = delete; + ~ScopedProcessSuspendTest() {} private: @@ -85,8 +89,6 @@ class ScopedProcessSuspendTest final : public WinChildProcess { EXPECT_EQ(c, ' '); return EXIT_SUCCESS; } - - DISALLOW_COPY_AND_ASSIGN(ScopedProcessSuspendTest); }; TEST(ScopedProcessSuspend, ScopedProcessSuspend) { diff --git a/util/win/scoped_set_event.h b/util/win/scoped_set_event.h index 82a1b314..ba58d2bd 100644 --- a/util/win/scoped_set_event.h +++ b/util/win/scoped_set_event.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" namespace crashpad { @@ -28,6 +27,10 @@ namespace crashpad { class ScopedSetEvent { public: explicit ScopedSetEvent(HANDLE event); + + ScopedSetEvent(const ScopedSetEvent&) = delete; + ScopedSetEvent& operator=(const ScopedSetEvent&) = delete; + ~ScopedSetEvent(); //! \brief Calls `SetEvent()` immediately. @@ -39,8 +42,6 @@ class ScopedSetEvent { private: HANDLE event_; // weak - - DISALLOW_COPY_AND_ASSIGN(ScopedSetEvent); }; } // namespace crashpad diff --git a/util/win/session_end_watcher.h b/util/win/session_end_watcher.h index b23d391d..6da1af85 100644 --- a/util/win/session_end_watcher.h +++ b/util/win/session_end_watcher.h @@ -17,7 +17,6 @@ #include -#include "base/macros.h" #include "util/thread/thread.h" #include "util/win/scoped_handle.h" @@ -36,6 +35,9 @@ class SessionEndWatcher : public Thread { public: SessionEndWatcher(); + SessionEndWatcher(const SessionEndWatcher&) = delete; + SessionEndWatcher& operator=(const SessionEndWatcher&) = delete; + //! \note The destructor waits for the thread that runs the message loop to //! terminate. ~SessionEndWatcher() override; @@ -70,8 +72,6 @@ class SessionEndWatcher : public Thread { HWND window_; // Conceptually strong, but ownership managed in ThreadMain() ScopedKernelHANDLE started_; ScopedKernelHANDLE stopped_; - - DISALLOW_COPY_AND_ASSIGN(SessionEndWatcher); }; } // namespace crashpad diff --git a/util/win/session_end_watcher_test.cc b/util/win/session_end_watcher_test.cc index 692d76e3..d6749dac 100644 --- a/util/win/session_end_watcher_test.cc +++ b/util/win/session_end_watcher_test.cc @@ -25,6 +25,9 @@ class SessionEndWatcherTest final : public SessionEndWatcher { public: SessionEndWatcherTest() : SessionEndWatcher(), called_(false) {} + SessionEndWatcherTest(const SessionEndWatcherTest&) = delete; + SessionEndWatcherTest& operator=(const SessionEndWatcherTest&) = delete; + ~SessionEndWatcherTest() override {} void Run() { @@ -44,8 +47,6 @@ class SessionEndWatcherTest final : public SessionEndWatcher { void SessionEnding() override { called_ = true; } bool called_; - - DISALLOW_COPY_AND_ASSIGN(SessionEndWatcherTest); }; TEST(SessionEndWatcher, SessionEndWatcher) {