electron/shell/browser
trop[bot] e5237eb2ce
fix: always terminate active Node Streams (#43072)
`.destroy()` is an important method in the lifecycle of a Node.js
Readable stream. It is typically called to reclaim the resources
(e.g., close file descriptor). The only situations where calling
it manually isn't necessary are when the following events are
emitted first:

- `end`: natural end of a stream
- `error`: stream terminated due to a failure

Prior to this commit the ended state was incorrectly tracked together
with a pending internal error. It led to situations where the request
could get aborted during a read and then get marked as ended (having
pending error).

With this change we disentangle pending "error" and "destroyed" cases to
always properly terminate an active Node.js Readable stream.

Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
Co-authored-by: Fedor Indutny <79877362+indutny-signal@users.noreply.github.com>
2024-07-27 14:46:47 -05:00
..
api fix: dangling raw_ptr<Session> in UserDataLink (#42944) 2024-07-18 13:13:59 +02:00
badging refactor: prefer using base::NoDestructor to base::{Singleton,LazyInstance} (#41424) 2024-02-28 11:38:49 +09:00
bluetooth chore: replace absl::optional<T> with std::optional<T> (#40928) 2024-01-10 16:23:35 -06:00
extensions fix: multiple move() calls on the same unique_ptr (#42819) 2024-07-09 10:35:36 +02:00
file_system_access feat: implement File System API support (#41827) 2024-04-15 12:22:17 -07:00
hid fix: iteration issues in hid RevokeEphemeralDevicePermission (#42902) 2024-07-16 12:33:15 +02:00
lib fix: crash using powerMonitor before ready event (#40888) 2024-01-09 09:41:42 +01:00
linux chore: remove unused std includes (#38767) 2023-06-14 11:07:18 -07:00
mac fix: restore wasOpenedAtLogin functionality (#42423) 2024-06-11 08:31:59 -05:00
media chore: bump chromium to 124.0.6323.0 (30-x-y) (#41475) 2024-02-29 09:50:27 -05:00
net fix: always terminate active Node Streams (#43072) 2024-07-27 14:46:47 -05:00
notifications chore: avoid crash while notification removal (#43059) 2024-07-26 19:40:34 -05:00
osr fix: crash with creating OffScreenWebContentsView (#42939) 2024-07-17 17:51:22 +02:00
plugins fix: failing build with enable_electron_extensions=false (#40032) 2023-10-04 10:40:01 +02:00
printing chore: delete unused PrintPreviewMessageHandler (#41861) 2024-04-15 17:35:59 -05:00
resources chore: strip trailing whitespace (#35969) 2023-02-01 12:59:16 +01:00
serial feat(serial): allow Bluetooth ports to be requested by service class ID (#41734) 2024-04-01 10:55:15 -04:00
ui feat: enable Windows Control Overlay on Linux (#42683) 2024-07-04 11:28:44 +02:00
usb fix: don't observe WebUSB for in-memory partitions (#42461) 2024-06-12 14:50:24 -05:00
webauthn fix: WebAuthn Discoverable Credential (Resident Credential) (#35374) 2022-09-20 15:47:42 -07:00
win fix: initial dark mode title bar on Windows 10 (#39287) 2023-07-31 22:02:23 -07:00
animation_util.h feat: replace BrowserView with WebContentsView (#35658) 2023-12-13 13:01:03 -08:00
animation_util_mac.mm feat: replace BrowserView with WebContentsView (#35658) 2023-12-13 13:01:03 -08:00
auto_updater.cc feat: add new ElectronSquirrelPreventDowngrades flag (#38625) 2023-09-11 11:54:51 -07:00
auto_updater.h feat: add new ElectronSquirrelPreventDowngrades flag (#38625) 2023-09-11 11:54:51 -07:00
auto_updater_mac.mm chore: bump chromium to 120.0.6099.0 (main) (#40316) 2023-11-01 10:02:12 -04:00
background_throttling_source.h fix: disable background throttling also in the viz::DisplayScheduler (#38924) 2023-09-26 16:00:46 -04:00
browser.cc fix: app.setLoginItemSettings error getting swallowed by gin conversion (#41667) 2024-03-22 16:59:51 +01:00
browser.h fix: restore wasOpenedAtLogin functionality (#42423) 2024-06-11 08:31:59 -05:00
browser_linux.cc fix: app.setLoginItemSettings error getting swallowed by gin conversion (#41667) 2024-03-22 16:59:51 +01:00
browser_mac.mm fix: restore wasOpenedAtLogin functionality (#42423) 2024-06-11 08:31:59 -05:00
browser_observer.h chore: fix some typos (#40506) 2023-11-12 19:51:56 -08:00
browser_process_impl.cc fix: crash when resolving proxy due to network service restart (#42896) 2024-07-17 16:27:33 -04:00
browser_process_impl.h feat: add support for configuring system network context proxies (#41417) 2024-02-23 14:56:06 -06:00
browser_win.cc fix: app.setLoginItemSettings error getting swallowed by gin conversion (#41667) 2024-03-22 16:59:51 +01:00
certificate_manager_model.cc refactor: remove deprecated BrowserContext::ResourceContext (#41221) 2024-02-05 18:12:34 -06:00
certificate_manager_model.h refactor: remove deprecated BrowserContext::ResourceContext (#41221) 2024-02-05 18:12:34 -06:00
child_web_contents_tracker.cc chore: bump chromium to 99.0.4767.0 (main) (#31986) 2022-01-10 17:31:39 -05:00
child_web_contents_tracker.h chore: add ELECTRON_ prefix to C++ include guards (#31925) 2021-11-22 16:34:31 +09:00
cookie_change_notifier.cc chore: bump chromium to 111.0.5544.3 (main) (#36820) 2023-02-03 12:43:42 +01:00
cookie_change_notifier.h chore: enable check raw ptr fields (#38167) 2023-05-11 16:07:39 -04:00
draggable_region_provider.h refactor: move draggable regions to WebContents (#36230) 2022-11-07 10:15:57 -08:00
electron_api_ipc_handler_impl.cc chore: remove deprecated ipcRenderer.sendTo() (#39087) 2023-08-28 10:29:27 -04:00
electron_api_ipc_handler_impl.h chore: remove deprecated ipcRenderer.sendTo() (#39087) 2023-08-28 10:29:27 -04:00
electron_autofill_driver.cc feat: replace BrowserView with WebContentsView (#35658) 2023-12-13 13:01:03 -08:00
electron_autofill_driver.h chore: enable check raw ptr fields (#38167) 2023-05-11 16:07:39 -04:00
electron_autofill_driver_factory.cc chore: remove unused std includes (#38767) 2023-06-14 11:07:18 -07:00
electron_autofill_driver_factory.h chore: bump chromium to 111.0.5544.3 (main) (#36820) 2023-02-03 12:43:42 +01:00
electron_browser_client.cc fix: avoid crash after upgrade on Linux (#42064) 2024-05-07 20:31:09 -04:00
electron_browser_client.h chore: bump chromium to 124.0.6359.0 (30-x-y) (#41606) 2024-03-15 18:13:55 -04:00
electron_browser_context.cc fix: crash when resolving proxy due to network service restart (#42896) 2024-07-17 16:27:33 -04:00
electron_browser_context.h feat: implement File System API support (#41827) 2024-04-15 12:22:17 -07:00
electron_browser_main_parts.cc refactor: run Windows SelectFileDialog out of process (#42826) 2024-07-10 15:35:17 +02:00
electron_browser_main_parts.h chore: replace absl::optional<T> with std::optional<T> (#40928) 2024-01-10 16:23:35 -06:00
electron_browser_main_parts_linux.cc chore: migrate base::StringPiece to std::string_view (#40915) 2024-01-10 19:00:37 -06:00
electron_browser_main_parts_mac.mm chore: bump chromium to 124.0.6367.8 (30-x-y) (#41599) 2024-03-25 10:24:53 +01:00
electron_browser_main_parts_posix.cc chore: bump chromium to 103.0.5046.0 (main) (#33906) 2022-05-17 12:48:40 -04:00
electron_download_manager_delegate.cc chore: bump chromium to 122.0.6261.6 (main) (#40949) 2024-01-25 12:46:30 -05:00
electron_download_manager_delegate.h chore: bump chromium to 122.0.6261.6 (main) (#40949) 2024-01-25 12:46:30 -05:00
electron_gpu_client.cc chore: bump chromium to 100.0.4857.0 (main) (#32419) 2022-02-09 18:58:52 -08:00
electron_gpu_client.h chore: add ELECTRON_ prefix to C++ include guards (#31925) 2021-11-22 16:34:31 +09:00
electron_navigation_throttle.cc fix: emit will-navigate for links in chrome: pages (#40390) 2023-11-14 14:09:44 -08:00
electron_navigation_throttle.h chore: add ELECTRON_ prefix to C++ include guards (#31925) 2021-11-22 16:34:31 +09:00
electron_pdf_document_helper_client.cc chore: bump chromium to 118.0.5975.0 (main) (#39531) 2023-09-01 15:54:59 +09:00
electron_pdf_document_helper_client.h chore: bump chromium to 118.0.5975.0 (main) (#39531) 2023-09-01 15:54:59 +09:00
electron_permission_manager.cc chore: bump chromium to 122.0.6194.0 (main) (#40750) 2024-01-03 09:52:49 +01:00
electron_permission_manager.h chore: bump chromium to 122.0.6194.0 (main) (#40750) 2024-01-03 09:52:49 +01:00
electron_speech_recognition_manager_delegate.cc chore: bump chromium to 111.0.5544.3 (main) (#36820) 2023-02-03 12:43:42 +01:00
electron_speech_recognition_manager_delegate.h chore: add ELECTRON_ prefix to C++ include guards (#31925) 2021-11-22 16:34:31 +09:00
electron_web_contents_utility_handler_impl.cc refactor: use content::GlobalRenderFrameHostId (#38843) 2023-06-20 15:32:31 +02:00
electron_web_contents_utility_handler_impl.h refactor: use content::GlobalRenderFrameHostId (#38843) 2023-06-20 15:32:31 +02:00
electron_web_ui_controller_factory.cc chore: clean up forward declarations (#29904) 2021-07-02 09:51:37 +09:00
electron_web_ui_controller_factory.h chore: add ELECTRON_ prefix to C++ include guards (#31925) 2021-11-22 16:34:31 +09:00
event_emitter_mixin.h chore: migrate base::StringPiece to std::string_view (#40915) 2024-01-10 19:00:37 -06:00
extended_web_contents_observer.h feat: replace BrowserView with WebContentsView (#35658) 2023-12-13 13:01:03 -08:00
fake_location_provider.cc chore: bump chromium to 116.0.5845.0 (main) (#38827) 2023-06-22 10:51:15 +02:00
fake_location_provider.h chore: bump chromium to 116.0.5845.0 (main) (#38827) 2023-06-22 10:51:15 +02:00
feature_list.cc fix: use ScreenCaptureKit exclusively on macOS 14.4 and higher (#41404) 2024-02-22 14:32:32 +01:00
feature_list.h fix: use ScreenCaptureKit exclusively on macOS 14.4 and higher (#41404) 2024-02-22 14:32:32 +01:00
feature_list_mac.mm build: work around ScreenCaptureKit bad feature flag parsing in Chromium (#41961) 2024-04-25 22:07:11 -04:00
file_select_helper.cc chore: bump chromium to 122.0.6236.2 (main) (#40871) 2024-01-11 19:33:40 +13:00
file_select_helper.h chore: bump chromium to 122.0.6236.2 (main) (#40871) 2024-01-11 19:33:40 +13:00
file_select_helper_mac.mm refactor: replace remaining NULL with nullptr (#40053) 2023-10-03 12:26:35 -07:00
font_defaults.cc perf: use fixed-size arrays for the font cache (#40898) 2024-01-08 10:31:02 +01:00
font_defaults.h chore: add ELECTRON_ prefix to C++ include guards (#31925) 2021-11-22 16:34:31 +09:00
javascript_environment.cc fix: bad js-flags shouldn't crash the app (#42440) 2024-06-11 12:53:15 -05:00
javascript_environment.h refactor: remove unused fields, methods in gin_helper::Locker (#39803) 2023-09-12 16:53:20 -07:00
login_handler.cc chore: replace absl::optional<T> with std::optional<T> (#40928) 2024-01-10 16:23:35 -06:00
login_handler.h chore: add ELECTRON_ prefix to C++ include guards (#31925) 2021-11-22 16:34:31 +09:00
microtasks_runner.cc chore: fix some typos (#40506) 2023-11-12 19:51:56 -08:00
microtasks_runner.h chore: enable check raw ptr fields (#38167) 2023-05-11 16:07:39 -04:00
native_window.cc feat: enable Windows Control Overlay on Linux (#42683) 2024-07-04 11:28:44 +02:00
native_window.h feat: enable Windows Control Overlay on Linux (#42683) 2024-07-04 11:28:44 +02:00
native_window_features.cc feat: enable WaylandWindowDecorations by default (#39582) 2023-08-24 17:02:05 -04:00
native_window_features.h fix: Add support for Wayland window decorations (#29618) 2022-01-26 13:59:09 -08:00
native_window_mac.h fix: vibrant view is inserted into Views API hierarchy (#42263) 2024-06-05 11:14:22 -07:00
native_window_mac.mm fix: vibrant view is inserted into Views API hierarchy (#42263) 2024-06-05 11:14:22 -07:00
native_window_observer.h feat: replace scroll-touch* with generic input-event (#35531) 2022-09-27 12:47:46 -07:00
native_window_views.cc feat: enable Windows Control Overlay on Linux (#42683) 2024-07-04 11:28:44 +02:00
native_window_views.h feat: enable Windows Control Overlay on Linux (#42683) 2024-07-04 11:28:44 +02:00
native_window_views_win.cc refactor: replace remaining NULL with nullptr (#40053) 2023-10-03 12:26:35 -07:00
network_hints_handler_impl.cc chore: bump chromium to 113.0.5636.0 (main) (#37130) 2023-03-10 10:07:42 -06:00
network_hints_handler_impl.h chore: enable check raw ptr fields (#38167) 2023-05-11 16:07:39 -04:00
protocol_registry.cc chore: bump chromium to 124.0.6323.0 (30-x-y) (#41475) 2024-02-29 09:50:27 -05:00
protocol_registry.h chore: bump chromium to 124.0.6323.0 (30-x-y) (#41475) 2024-02-29 09:50:27 -05:00
relauncher.cc refactor: replace remaining NULL with nullptr (#40053) 2023-10-03 12:26:35 -07:00
relauncher.h chore: bump chromium to 100.0.4857.0 (main) (#32419) 2022-02-09 18:58:52 -08:00
relauncher_linux.cc chore: used nested namespaces (#34737) 2022-06-29 12:55:47 -07:00
relauncher_mac.cc refactor: replace remaining NULL with nullptr (#40053) 2023-10-03 12:26:35 -07:00
relauncher_win.cc fix: wide string concatenation (#40892) 2024-01-07 22:02:20 -08:00
session_preferences.cc refactor: add SessionPreferences::CreateForBrowserContext() (#38656) 2023-06-09 11:20:43 -05:00
session_preferences.h refactor: add SessionPreferences::CreateForBrowserContext() (#38656) 2023-06-09 11:20:43 -05:00
special_storage_policy.cc chore: bump chromium to 111.0.5544.3 (main) (#36820) 2023-02-03 12:43:42 +01:00
special_storage_policy.h chore: bump chromium to 106.0.5216.0 (main) (#34993) 2022-08-17 11:35:53 -07:00
web_contents_permission_helper.cc fix: getUserMedia needs macOS system permissions check (#42938) 2024-07-17 15:18:03 +02:00
web_contents_permission_helper.h feat: implement File System API support (#41827) 2024-04-15 12:22:17 -07:00
web_contents_preferences.cc refactor: remove banned std::to_string() calls (#41087) 2024-01-24 16:43:31 -06:00
web_contents_preferences.h chore: replace absl::optional<T> with std::optional<T> (#40928) 2024-01-10 16:23:35 -06:00
web_contents_zoom_controller.cc refactor: inline simple getters (#41125) 2024-01-29 20:43:28 -06:00
web_contents_zoom_controller.h refactor: inline simple getters (#41125) 2024-01-29 20:43:28 -06:00
web_contents_zoom_observer.h refactor: update WebContentsZoomController (#39428) 2023-08-15 10:33:30 +09:00
web_view_guest_delegate.cc fix: crash when unloading some WebViews (#40400) 2023-11-03 10:36:25 -04:00
web_view_guest_delegate.h refactor: update WebContentsZoomController (#39428) 2023-08-15 10:33:30 +09:00
web_view_manager.cc chore: bump chromium to 121.0.6147.0 (main) (#40523) 2023-11-28 13:40:12 -08:00
web_view_manager.h perf: use flat_set, flat_map for small, trivially-moved containers (#40817) 2024-01-05 12:18:31 +01:00
window_list.cc refactor: migrate deprecated LazyInstance code to NoDestructor (#40927) 2024-01-10 14:01:49 -06:00
window_list.h refactor: migrate deprecated LazyInstance code to NoDestructor (#40927) 2024-01-10 14:01:49 -06:00
window_list_observer.h chore: add ELECTRON_ prefix to C++ include guards (#31925) 2021-11-22 16:34:31 +09:00
zoom_level_delegate.cc chore: replace absl::optional<T> with std::optional<T> (#40928) 2024-01-10 16:23:35 -06:00
zoom_level_delegate.h chore: enable check raw ptr fields (#38167) 2023-05-11 16:07:39 -04:00