Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: a59a58f0bdd9e2adb12d49b64c28cb6c45a0fdac
      
https://github.com/WebKit/WebKit/commit/a59a58f0bdd9e2adb12d49b64c28cb6c45a0fdac
  Author: Chris Dumez <[email protected]>
  Date:   2026-10-12 (Mon, 12 Oct 2026)

  Changed paths:
    M Source/WebCore/CMakeLists.txt
    M Source/WebCore/DerivedSources-output.xcfilelist
    M Source/WebCore/DerivedSources.make
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebCore/css/scripts/process-css-values.py
    M Source/WebCore/rendering/CSSValueKey.h
    M Source/WebCore/rendering/ios/RenderThemeIOS.mm
    M Source/WebKit/CMakeLists.txt
    M Source/WebKit/DerivedSources-input.xcfilelist
    M Source/WebKit/DerivedSources.make
    M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in

  Log Message:
  -----------
  Serialize CSSValueKey::cssValueID as a CSSValueID over IPC
https://bugs.webkit.org/show_bug.cgi?id=327213

Reviewed by Sam Weinig.

CSSValueKey stored its keyword as an unsigned because CSSValueID had no IPC
description: listing its ~1300 values by hand in a *.serialization.in file is
impractical. Instead, have the CSS value generator also emit
CSSValueKeywords.serialization.in, describing CSSValueID with exactly the
keywords enabled in the build (like HTTPHeaderNames.serialization.in for
HTTPHeaderName). The IPC serializer generator then produces the
isValidEnum<CSSValueID> check, so CSSValueID can be encoded with the generic
enum ArgumentCoder and range-checked on decode. CSSValueKey can then hold a
CSSValueID.

Out-of-range keyword IDs received over IPC are now rejected at decode time.

* Source/WebCore/CMakeLists.txt:
* Source/WebCore/DerivedSources-output.xcfilelist:
* Source/WebCore/DerivedSources.make:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/css/scripts/process-css-values.py:
* Source/WebCore/rendering/CSSValueKey.h:
* Source/WebCore/rendering/ios/RenderThemeIOS.mm:
* Source/WebKit/CMakeLists.txt:
* Source/WebKit/DerivedSources-input.xcfilelist:
* Source/WebKit/DerivedSources.make:
* Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:

Canonical link: https://commits.webkit.org/323509@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to