Skip to content

Commit

Permalink
chore: remove gin::Wrappable crash keys (#31075) (#31188)
Browse files Browse the repository at this point in the history
  • Loading branch information
VerteDinde committed Sep 29, 2021
1 parent fed38c1 commit 447c073
Show file tree
Hide file tree
Showing 4 changed files with 1 addition and 169 deletions.
1 change: 0 additions & 1 deletion patches/chromium/.patches
Expand Up @@ -101,7 +101,6 @@ build_do_not_depend_on_packed_resource_integrity.patch
don_t_run_pcscan_notifythreadcreated_if_pcscan_is_disabled.patch
refactor_restore_base_adaptcallbackforrepeating.patch
hack_to_allow_gclient_sync_with_host_os_mac_on_linux_in_ci.patch
add_gin_wrappable_crash_key.patch
revert_roll_clang_llvmorg-13-init-14732-g8a7b5ebf-2.patch
logging_win32_only_create_a_console_if_logging_to_stderr.patch
fix_media_key_usage_with_globalshortcuts.patch
63 changes: 0 additions & 63 deletions patches/chromium/add_gin_wrappable_crash_key.patch

This file was deleted.

102 changes: 1 addition & 101 deletions shell/common/crash_keys.cc
Expand Up @@ -16,39 +16,11 @@
#include "content/public/common/content_switches.h"
#include "electron/buildflags/buildflags.h"
#include "electron/fuses.h"
#include "shell/browser/javascript_environment.h"
#include "shell/common/electron_constants.h"
#include "shell/common/options_switches.h"
#include "third_party/crashpad/crashpad/client/annotation.h"

#include "gin/wrappable.h"
#include "shell/browser/api/electron_api_app.h"
#include "shell/browser/api/electron_api_auto_updater.h"
#include "shell/browser/api/electron_api_browser_view.h"
#include "shell/browser/api/electron_api_cookies.h"
#include "shell/browser/api/electron_api_data_pipe_holder.h"
#include "shell/browser/api/electron_api_debugger.h"
#include "shell/browser/api/electron_api_desktop_capturer.h"
#include "shell/browser/api/electron_api_download_item.h"
#include "shell/browser/api/electron_api_global_shortcut.h"
#include "shell/browser/api/electron_api_in_app_purchase.h"
#include "shell/browser/api/electron_api_menu.h"
#include "shell/browser/api/electron_api_native_theme.h"
#include "shell/browser/api/electron_api_net_log.h"
#include "shell/browser/api/electron_api_notification.h"
#include "shell/browser/api/electron_api_power_monitor.h"
#include "shell/browser/api/electron_api_power_save_blocker.h"
#include "shell/browser/api/electron_api_protocol.h"
#include "shell/browser/api/electron_api_service_worker_context.h"
#include "shell/browser/api/electron_api_session.h"
#include "shell/browser/api/electron_api_system_preferences.h"
#include "shell/browser/api/electron_api_tray.h"
#include "shell/browser/api/electron_api_url_loader.h"
#include "shell/browser/api/electron_api_web_contents.h"
#include "shell/browser/api/electron_api_web_frame_main.h"
#include "shell/browser/api/electron_api_web_request.h"
#include "shell/browser/api/event.h"
#include "shell/common/api/electron_api_native_image.h"

namespace electron {

namespace crash_keys {
Expand Down Expand Up @@ -185,78 +157,6 @@ void SetPlatformCrashKey() {
#endif
}

std::string GetCrashValueForGinWrappable(gin::WrapperInfo* info) {
std::string crash_location;

// Adds a breadcrumb for crashes within gin::WrappableBase::SecondWeakCallback
// (see patch: add_gin_wrappable_crash_key.patch)
// Compares the pointers for the kWrapperInfo within SecondWeakCallback
// with the wrapper info from classes that use gin::Wrappable and
// could potentially retain a reference after deletion.
if (info == &electron::api::WebContents::kWrapperInfo)
crash_location = "WebContents";
else if (info == &electron::api::BrowserView::kWrapperInfo)
crash_location = "BrowserView";
else if (info == &electron::api::Notification::kWrapperInfo)
crash_location = "Notification";
else if (info == &electron::api::Cookies::kWrapperInfo)
crash_location = "Cookies";
#if BUILDFLAG(ENABLE_DESKTOP_CAPTURER)
else if (info == &electron::api::DesktopCapturer::kWrapperInfo)
crash_location = "DesktopCapturer";
#endif
else if (info == &electron::api::NetLog::kWrapperInfo)
crash_location = "NetLog";
else if (info == &electron::api::NativeImage::kWrapperInfo)
crash_location = "NativeImage";
else if (info == &electron::api::Menu::kWrapperInfo)
crash_location = "Menu";
else if (info == &electron::api::PowerMonitor::kWrapperInfo)
crash_location = "PowerMonitor";
else if (info == &electron::api::Protocol::kWrapperInfo)
crash_location = "Protocol";
else if (info == &electron::api::ServiceWorkerContext::kWrapperInfo)
crash_location = "ServiceWorkerContext";
else if (info == &electron::api::WebFrameMain::kWrapperInfo)
crash_location = "WebFrameMain";
else if (info == &electron::api::WebRequest::kWrapperInfo)
crash_location = "WebRequest";
else if (info == &electron::api::SystemPreferences::kWrapperInfo)
crash_location = "SystemPreferences";
else if (info == &electron::api::Session::kWrapperInfo)
crash_location = "Session";
else if (info == &electron::api::DownloadItem::kWrapperInfo)
crash_location = "DownloadItem";
else if (info == &electron::api::NativeTheme::kWrapperInfo)
crash_location = "NativeTheme";
else if (info == &electron::api::Debugger::kWrapperInfo)
crash_location = "Debugger";
else if (info == &electron::api::GlobalShortcut::kWrapperInfo)
crash_location = "GlobalShortcut";
else if (info == &electron::api::InAppPurchase::kWrapperInfo)
crash_location = "InAppPurchase";
else if (info == &electron::api::Tray::kWrapperInfo)
crash_location = "Tray";
else if (info == &electron::api::DataPipeHolder::kWrapperInfo)
crash_location = "DataPipeHolder";
else if (info == &electron::api::AutoUpdater::kWrapperInfo)
crash_location = "AutoUpdater";
else if (info == &electron::api::SimpleURLLoaderWrapper::kWrapperInfo)
crash_location = "SimpleURLLoaderWrapper";
else if (info == &gin_helper::Event::kWrapperInfo)
crash_location = "Event";
else if (info == &electron::api::PowerSaveBlocker::kWrapperInfo)
crash_location = "PowerSaveBlocker";
else if (info == &electron::api::App::kWrapperInfo)
crash_location = "App";
else
crash_location =
"Deleted kWrapperInfo does not match listed component. Please review "
"listed crash keys.";

return crash_location;
}

} // namespace crash_keys

} // namespace electron
4 changes: 0 additions & 4 deletions shell/common/crash_keys.h
Expand Up @@ -8,8 +8,6 @@
#include <map>
#include <string>

#include "gin/wrappable.h"

namespace base {
class CommandLine;
}
Expand All @@ -25,8 +23,6 @@ void GetCrashKeys(std::map<std::string, std::string>* keys);
void SetCrashKeysFromCommandLine(const base::CommandLine& command_line);
void SetPlatformCrashKey();

std::string GetCrashValueForGinWrappable(gin::WrapperInfo* info);

} // namespace crash_keys

} // namespace electron
Expand Down

0 comments on commit 447c073

Please sign in to comment.