Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: electron/electron
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v40.8.4
Choose a base ref
...
head repository: electron/electron
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v40.8.5
Choose a head ref
  • 8 commits
  • 15 files changed
  • 8 contributors

Commits on Mar 25, 2026

  1. chore: cherry-pick fbfb27470bf6 from chromium (#50438)

    * chore: cherry-pick fbfb27470bf6 from chromium
    
    * chore: update patches
    
    * chore: cherry-pick bf6dd974238b from angle (#50437)
    
    * fix: remove duplicate MaxGeometryUniformBlocks from angle cherry-pick patch
    
    The angle cherry-pick added MaxGeometryUniformBlocks in new locations,
    but it already existed in the EXT_geometry_shader section on 40-x-y,
    causing a duplicate struct member build error in ShaderLang.h.
    
    Re-exported the patch from the angle repo to correctly generate context
    lines instead of additions for fields that already exist in the base.
    
    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
    
    * fix: guard validatePerStageMaxUniformBlocks with ANGLE_SH_VERSION check
    
    The angle cherry-pick patch that adds this field to ShCompileOptions
    may not be applied in CI due to the angle repo not being found during
    patch application. Guard the usage with a version check so compilation
    succeeds regardless of angle patch application order.
    
    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
    
    * Revert "fix: guard validatePerStageMaxUniformBlocks with ANGLE_SH_VERSION check"
    
    This reverts commit 9ebf565.
    
    * fix: add angle to patches config and re-export angle patches for M144
    
    The angle entry was missing from patches/config.json on 40-x-y, which
    meant angle patches were never applied during gclient sync or CI builds.
    This caused the chromium cherry-pick to fail with "no member named
    'validatePerStageMaxUniformBlocks' in 'ShCompileOptions'".
    
    Also re-exports the angle patches against the M144 base, resolving
    conflicts from the M142-targeted patches.
    
    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
    
    * chore: Update patches
    
    ---------
    
    Co-authored-by: PatchUp <73610968+patchup[bot]@users.noreply.github.com>
    Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
    3 people authored Mar 25, 2026
    Configuration menu
    Copy the full SHA
    e1c17fd View commit details
    Browse the repository at this point in the history

Commits on Mar 26, 2026

  1. fix: crash in clipboard.readImage() on malformed image data (#50491)

    gfx::PNGCodec::Decode() returns a null SkBitmap when it fails to decode
    the clipboard contents as a PNG. Passing that null bitmap to
    gfx::Image::CreateFrom1xBitmap() triggers a crash.
    
    Return an empty gfx::Image instead, matching the existing null-check
    pattern in skia_util.cc.
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Sam Attard <sattard@anthropic.com>
    trop[bot] and MarshallOfSound authored Mar 26, 2026
    Configuration menu
    Copy the full SHA
    4aa3610 View commit details
    Browse the repository at this point in the history
  2. fix: crash calling OSR shared texture release() after texture GC'd (#…

    …50500)
    
    The weak persistent tracking the OffscreenReleaseHolderMonitor was tied
    to the texture object, but the release() closure holds a raw pointer to
    the monitor via its v8::External data. If JS retained texture.release
    while dropping the texture itself, the monitor would be freed on GC and
    a later release() call would crash.
    
    Track the release function instead of the texture object. Since the
    texture holds release as a property, this keeps the monitor alive as
    long as either is reachable.
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Sam Attard <sattard@anthropic.com>
    trop[bot] and MarshallOfSound authored Mar 26, 2026
    Configuration menu
    Copy the full SHA
    d284168 View commit details
    Browse the repository at this point in the history
  3. refactor: remove dead named-window lookup from guest-window-manager (#…

    …50495)
    
    The frameNamesToWindow map was a holdover from the BrowserWindowProxy
    IPC shim. Since nativeWindowOpen became the only code path, Blink's
    FrameTree::FindOrCreateFrameForNavigation resolves named window targets
    directly in the renderer, scoped to the opener's browsing context
    group. When a matching named window exists, Blink navigates it without
    ever sending a CreateNewWindow IPC to the browser, so this map was
    never consulted in the legitimate same-opener case.
    
    The only time the map found a match was when two unrelated renderers
    happened to use the same target name, in which case openGuestWindow
    would short-circuit before consuming the guest WebContents that
    Chromium had already created for the new window, leaking it.
    
    Adds a test verifying Blink handles same-opener named-target reuse
    end-to-end without any browser-side tracking.
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Sam Attard <sattard@anthropic.com>
    trop[bot] and MarshallOfSound authored Mar 26, 2026
    Configuration menu
    Copy the full SHA
    9bf9c36 View commit details
    Browse the repository at this point in the history
  4. fix: [a11y] fire AXMenuOpened event when ARIA menu is added to DOM (#…

    …50505)
    
    * fix: fire AXMenuOpened event when a visible ARIA menu instance is added to the DOM
    
    Co-authored-by: Keeley Hammond <khammond@slack-corp.com>
    
    * fix: remove redundent FireMenuPopupEndForDeletedMenus
    
    MENU_POPUP_END for deleted menus is already handled by
    AXTreeManager::OnNodeWillBeDeleted, which
    fires the event directly on the menu node before destruction.
    
    Co-authored-by: Keeley Hammond <khammond@slack-corp.com>
    
    * chore: add feature flag (kDynamicMenuPopupEvents)
    
    Co-authored-by: Keeley Hammond <vertedinde@electronjs.org>
    
    * chore: update patches
    
    Co-authored-by: Keeley Hammond <vertedinde@electronjs.org>
    
    * chore: update patches
    
    ---------
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Keeley Hammond <khammond@slack-corp.com>
    Co-authored-by: Keeley Hammond <vertedinde@electronjs.org>
    3 people authored Mar 26, 2026
    Configuration menu
    Copy the full SHA
    36c88a4 View commit details
    Browse the repository at this point in the history
  5. fix: fall back to default DPI when GTK returns 0 on Linux (#50488)

    GetDefaultPrinterDPI() creates a blank GtkPrintSettings and reads
    its resolution, which returns 0 for uninitialized settings. With
    DPI=0, SetPrintableAreaIfValid() computes a zero scale factor,
    producing empty page dimensions that fail PrintMsgPrintParamsIsValid().
    
    Fall back to kDefaultPdfDpi (72) when GTK returns 0, matching the
    existing Windows fallback pattern when CreateDC fails.
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
    trop[bot] and codebytere authored Mar 26, 2026
    Configuration menu
    Copy the full SHA
    904fbbd View commit details
    Browse the repository at this point in the history
  6. fix: hex-encode Windows notification icon temp filenames (#50484)

    * fix: hex-encode Windows notification icon temp filenames
    
    NotificationPresenterWin was using SHA1HashString(origin.spec()) directly
    as the basename for the temporary PNG written for toast icons.
    
    SHA1HashString returns raw digest bytes, so the generated filename could
    contain invalid path characters on Windows. That caused WriteFile to fail
    when saving notification icons, which left toast XML without the expected
    icon path.
    
    Hex-encode the digest before appending .png so the temporary filename is
    filesystem-safe while keeping deterministic naming for a given origin.
    
    Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
    
    * Update shell/browser/notifications/win/notification_presenter_win.cc
    
    Co-authored-by: Robo <hop2deep@gmail.com>
    
    Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
    
    ---------
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Shelley Vohr <shelley.vohr@gmail.com>
    trop[bot] and codebytere authored Mar 26, 2026
    Configuration menu
    Copy the full SHA
    44f02f6 View commit details
    Browse the repository at this point in the history
  7. fix: outdated execution path for COM activation (#50518)

    * fix: outdated execution path
    
    Co-authored-by: Jan Hannemann <jan.hannemann@outlook.com>
    
    * fix: use stub exe when detected
    
    Co-authored-by: Jan Hannemann <jan.hannemann@outlook.com>
    
    ---------
    
    Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com>
    Co-authored-by: Jan Hannemann <jan.hannemann@outlook.com>
    trop[bot] and bitdisaster authored Mar 26, 2026
    Configuration menu
    Copy the full SHA
    c09e2aa View commit details
    Browse the repository at this point in the history
Loading