Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: aca2b09062fa138360a3f291885a1ed30901734b
https://github.com/WebKit/WebKit/commit/aca2b09062fa138360a3f291885a1ed30901734b
Author: Claudio Saavedra <[email protected]>
Date: 2026-09-18 (Fri, 18 Sep 2026)
Changed paths:
M Source/WebKit/UIProcess/API/glib/WebKitApplicationInfo.cpp
M Source/WebKit/UIProcess/API/glib/WebKitAuthenticationRequest.cpp
M Source/WebKit/UIProcess/API/glib/WebKitAutomationSession.cpp
M Source/WebKit/UIProcess/API/glib/WebKitBackForwardListItem.cpp
M Source/WebKit/UIProcess/API/glib/WebKitCredential.cpp
M Source/WebKit/UIProcess/API/glib/WebKitDownload.cpp
M Source/WebKit/UIProcess/API/glib/WebKitDownloadPrivate.h
M Source/WebKit/UIProcess/API/glib/WebKitFeature.cpp
M Source/WebKit/UIProcess/API/glib/WebKitFindController.cpp
M Source/WebKit/UIProcess/API/glib/WebKitInitialize.cpp
M
Source/WebKit/UIProcess/API/glib/WebKitMediaKeySystemPermissionRequest.cpp
M Source/WebKit/UIProcess/API/glib/WebKitNavigationAction.cpp
M Source/WebKit/UIProcess/API/glib/WebKitNavigationActionPrivate.h
M Source/WebKit/UIProcess/API/glib/WebKitNetworkSession.cpp
M Source/WebKit/UIProcess/API/glib/WebKitNotification.cpp
M Source/WebKit/UIProcess/API/glib/WebKitNotificationProvider.cpp
M Source/WebKit/UIProcess/API/glib/WebKitNotificationProvider.h
M Source/WebKit/UIProcess/API/glib/WebKitOptionMenuItem.cpp
M Source/WebKit/UIProcess/API/glib/WebKitOptionMenuItemPrivate.h
M Source/WebKit/UIProcess/API/glib/WebKitPermissionStateQuery.cpp
M Source/WebKit/UIProcess/API/glib/WebKitScriptDialog.cpp
M Source/WebKit/UIProcess/API/glib/WebKitScriptDialogPrivate.h
M Source/WebKit/UIProcess/API/glib/WebKitSecurityOrigin.cpp
M Source/WebKit/UIProcess/API/glib/WebKitSettings.cpp
M
Source/WebKit/UIProcess/API/glib/WebKitURISchemeRequest.cpp
M Source/WebKit/UIProcess/API/glib/WebKitURISchemeResponse.cpp
M Source/WebKit/UIProcess/API/glib/WebKitURISchemeResponsePrivate.h
M Source/WebKit/UIProcess/API/glib/WebKitUserContent.cpp
M Source/WebKit/UIProcess/API/glib/WebKitWebContext.cpp
M Source/WebKit/UIProcess/API/glib/WebKitWebExtension.cpp
M Source/WebKit/UIProcess/API/glib/WebKitWebExtensionContext.cpp
M Source/WebKit/UIProcess/API/glib/WebKitWebExtensionMatchPattern.cpp
M Source/WebKit/UIProcess/API/glib/WebKitWebResource.cpp
M Source/WebKit/UIProcess/API/glib/WebKitWebView.cpp
M Source/WebKit/UIProcess/API/glib/WebKitWebViewPrivate.h
M Source/WebKit/UIProcess/API/glib/WebKitWebsiteData.cpp
M
Source/WebKit/UIProcess/API/glib/WebKitWebsiteDataAccessPermissionRequest.cpp
M Source/WebKit/UIProcess/API/glib/WebKitWebsiteDataManager.cpp
M
Source/WebKit/UIProcess/API/glib/WebKitWebsiteDataManagerPrivate.h
M Source/WebKit/UIProcess/API/glib/WebKitWebsitePolicies.cpp
M Source/WebKit/UIProcess/API/gtk/WebKitInputMethodContextImplGtk.cpp
M Source/WebKit/UIProcess/API/gtk/WebKitPrintCustomWidget.cpp
M Source/WebKit/UIProcess/API/gtk/WebKitScriptDialogImpl.cpp
M Source/WebKit/UIProcess/API/gtk/WebKitWebInspector.cpp
M Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp
M Source/WebKit/UIProcess/API/wpe/WebKitScriptDialogWPE.cpp
Log Message:
-----------
[GLib] Use UTF8CString for the strings the GLib API caches for its C interface
https://bugs.webkit.org/show_bug.cgi?id=324530
Reviewed by Chris Dumez.
The WebKit*Private structs and boxed types hold CString copies of WebCore
strings so that getters can return a const gchar*. Those bytes are always
UTF-8 (they come from String::utf8() or from UTF-8 API arguments), but CString
does not record that, so every consumer had to
re-establish the encoding.
Declare them UTF8CString, which String::utf8() has returned since 320905@main,
and keep the encoding through the internal signatures that carry them.
Decoding back to String uses the String(const UTF8CString&) constructor rather
than String::fromUTF8(x.data()). While here, drop three redundant toString()
calls before utf8() on StringViews, and the CString slicing initialisers in
WebKitFeature and WebKitWebExtensionMatchPattern.
The URI scheme response content type and status message were decoded with
String::fromLatin1; they are now decoded as the UTF-8 the API documents.
* Source/WebKit/UIProcess/API/glib/WebKitApplicationInfo.cpp:
(webkit_application_info_set_name):
(webkit_application_info_get_name):
* Source/WebKit/UIProcess/API/glib/WebKitAuthenticationRequest.cpp:
(webkit_authentication_request_get_host):
(webkit_authentication_request_get_realm):
*
Source/WebKit/UIProcess/API/glib/WebKitAutomationSession.cpp:
(webkitAutomationSessionGetProperty):
(webkitAutomationSessionSetProperty):
(webkitAutomationSessionConstructed):
(webkit_automation_session_get_id):
* Source/WebKit/UIProcess/API/glib/WebKitBackForwardListItem.cpp:
(webkit_back_forward_list_item_get_uri):
(webkit_back_forward_list_item_get_title):
(webkit_back_forward_list_item_get_original_uri):
* Source/WebKit/UIProcess/API/glib/WebKitCredential.cpp:
(webkit_credential_get_username):
(webkit_credential_get_password):
* Source/WebKit/UIProcess/API/glib/WebKitDownload.cpp:
(webkitDownloadDecideDestinationWithSuggestedFilename):
* Source/WebKit/UIProcess/API/glib/WebKitDownloadPrivate.h:
* Source/WebKit/UIProcess/API/glib/WebKitFeature.cpp:
(_WebKitFeature::toIdentifier):
(webkit_feature_get_identifier):
(webkit_feature_get_name):
(webkit_feature_get_details):
(webkit_feature_list_find):
*
Source/WebKit/UIProcess/API/glib/WebKitFindController.cpp:
(webkit_find_controller_get_search_text):
(webKitFindControllerPerform):
(webKitFindControllerSetSearchData):
* Source/WebKit/UIProcess/API/glib/WebKitInitialize.cpp:
(WebKit::initializeRemoteInspectorServer):
* Source/WebKit/UIProcess/API/glib/WebKitMediaKeySystemPermissionRequest.cpp:
(webkit_media_key_system_permission_get_name):
* Source/WebKit/UIProcess/API/glib/WebKitNavigationAction.cpp:
(webkit_navigation_action_get_frame_name):
* Source/WebKit/UIProcess/API/glib/WebKitNavigationActionPrivate.h:
* Source/WebKit/UIProcess/API/glib/WebKitNetworkSession.cpp:
(webkitNetworkSessionSetProperty):
* Source/WebKit/UIProcess/API/glib/WebKitNotification.cpp:
(webkit_notification_get_title):
(webkit_notification_get_body):
(webkit_notification_get_tag):
* Source/WebKit/UIProcess/API/glib/WebKitNotificationProvider.cpp:
(WebKitNotificationProvider::withdrawAnyPreviousAPINotificationMatchingTag):
*
Source/WebKit/UIProcess/API/glib/WebKitNotificationProvider.h:
* Source/WebKit/UIProcess/API/glib/WebKitOptionMenuItem.cpp:
(webkit_option_menu_item_get_label):
(webkit_option_menu_item_get_tooltip):
* Source/WebKit/UIProcess/API/glib/WebKitOptionMenuItemPrivate.h:
* Source/WebKit/UIProcess/API/glib/WebKitPermissionStateQuery.cpp:
(webkit_permission_state_query_get_name):
* Source/WebKit/UIProcess/API/glib/WebKitScriptDialog.cpp:
(webkitScriptDialogCreate):
(webkit_script_dialog_get_message):
(webkit_script_dialog_prompt_get_default_text):
(webkit_script_dialog_prompt_set_text):
(webkit_script_dialog_close):
* Source/WebKit/UIProcess/API/glib/WebKitScriptDialogPrivate.h:
(_WebKitScriptDialog::_WebKitScriptDialog):
* Source/WebKit/UIProcess/API/glib/WebKitSecurityOrigin.cpp:
(webkit_security_origin_get_protocol):
(webkit_security_origin_get_host):
*
Source/WebKit/UIProcess/API/glib/WebKitSettings.cpp:
(webkit_settings_get_default_font_family):
(webkit_settings_set_default_font_family):
(webkit_settings_get_monospace_font_family):
(webkit_settings_set_monospace_font_family):
(webkit_settings_get_serif_font_family):
(webkit_settings_set_serif_font_family):
(webkit_settings_get_sans_serif_font_family):
(webkit_settings_set_sans_serif_font_family):
(webkit_settings_get_cursive_font_family):
(webkit_settings_set_cursive_font_family):
(webkit_settings_get_fantasy_font_family):
(webkit_settings_set_fantasy_font_family):
(webkit_settings_get_pictograph_font_family):
(webkit_settings_set_pictograph_font_family):
(webkit_settings_get_math_font_family):
(webkit_settings_set_math_font_family):
(webkit_settings_get_default_charset):
(webkit_settings_set_default_charset):
(webkit_settings_get_user_agent):
(webkit_settings_get_media_content_types_requiring_hardware_support):
(webkit_settings_set_media_content_types_requiring_hardware_support):
(webkit_settings_get_webrtc_udp_ports_range):
(webkit_settings_set_webrtc_udp_ports_range):
*
Source/WebKit/UIProcess/API/glib/WebKitURISchemeRequest.cpp:
(webkit_uri_scheme_request_get_scheme):
(webkit_uri_scheme_request_get_uri):
(webkit_uri_scheme_request_get_path):
(webkitURISchemeRequestReadCallback):
* Source/WebKit/UIProcess/API/glib/WebKitURISchemeResponse.cpp:
(webKitURISchemeResponseGetStatusMessage):
(webKitURISchemeResponseGetContentType):
(webkit_uri_scheme_response_set_content_type):
(webkit_uri_scheme_response_set_status):
* Source/WebKit/UIProcess/API/glib/WebKitURISchemeResponsePrivate.h:
* Source/WebKit/UIProcess/API/glib/WebKitUserContent.cpp:
(webkit_user_content_filter_get_identifier):
* Source/WebKit/UIProcess/API/glib/WebKitWebContext.cpp:
(webkitWebContextGetProperty):
(webkitWebContextSetProperty):
(webkitWebContextConstructed):
*
Source/WebKit/UIProcess/API/glib/WebKitWebExtension.cpp:
(webkit_web_extension_get_default_locale):
(webkit_web_extension_get_display_name):
(webkit_web_extension_get_display_short_name):
(webkit_web_extension_get_display_version):
(webkit_web_extension_get_display_description):
(webkit_web_extension_get_display_action_label):
(webkit_web_extension_get_version):
* Source/WebKit/UIProcess/API/glib/WebKitWebExtensionContext.cpp:
(webkit_web_extension_context_get_base_uri):
(webkit_web_extension_context_get_options_page_uri):
(webkit_web_extension_context_get_override_new_tab_page_uri):
* Source/WebKit/UIProcess/API/glib/WebKitWebExtensionMatchPattern.cpp:
(webkit_web_extension_match_pattern_get_string):
(webkit_web_extension_match_pattern_get_scheme):
(webkit_web_extension_match_pattern_get_host):
(webkit_web_extension_match_pattern_get_path):
*
Source/WebKit/UIProcess/API/glib/WebKitWebResource.cpp:
(webkitWebResourceUpdateURI):
(webkit_web_resource_get_uri):
(webkit_web_resource_get_data):
(webkitWebResourceSentRequest):
* Source/WebKit/UIProcess/API/glib/WebKitWebView.cpp:
(webkitWebViewRequestFavicon):
(webkitWebViewUpdateFaviconURI):
(webkitWebViewCreatePageConfiguration):
(webkitWebViewSetProperty):
(webkitWebViewGetProperty):
(webkitWebViewLoadChanged):
(webkitWebViewRunJavaScriptAlert):
(webkitWebViewRunJavaScriptConfirm):
(webkitWebViewRunJavaScriptPrompt):
(webkitWebViewRunJavaScriptBeforeUnloadConfirm):
(webkit_web_view_get_title):
(webkit_web_view_get_uri):
(webkit_web_view_get_custom_charset):
* Source/WebKit/UIProcess/API/glib/WebKitWebViewPrivate.h:
* Source/WebKit/UIProcess/API/glib/WebKitWebsiteData.cpp:
(webkit_website_data_get_name):
*
Source/WebKit/UIProcess/API/glib/WebKitWebsiteDataAccessPermissionRequest.cpp:
(webkit_website_data_access_permission_request_get_requesting_domain):
(webkit_website_data_access_permission_request_get_current_domain):
* Source/WebKit/UIProcess/API/glib/WebKitWebsiteDataManager.cpp:
(webkitWebsiteDataManagerSetProperty):
(webkitWebsiteDataManagerConstructed):
(webkitWebsiteDataManagerGetDataStore):
(webkitWebsiteDataManagerCreate):
(webkit_website_data_manager_get_base_data_directory):
(webkit_website_data_manager_get_base_cache_directory):
(webkitWebsiteDataManagerGetFaviconDatabasePath):
(webkit_itp_first_party_get_domain):
(webkit_itp_third_party_get_domain):
* Source/WebKit/UIProcess/API/glib/WebKitWebsiteDataManagerPrivate.h:
* Source/WebKit/UIProcess/API/glib/WebKitWebsitePolicies.cpp:
(webkit_website_policies_get_custom_user_agent):
*
Source/WebKit/UIProcess/API/gtk/WebKitInputMethodContextImplGtk.cpp:
(contextRetrieveSurrounding):
(webkitInputMethodContextImplGtkNotifySurrounding):
* Source/WebKit/UIProcess/API/gtk/WebKitPrintCustomWidget.cpp:
(webkitPrintCustomWidgetSetProperty):
(webkit_print_custom_widget_get_title):
* Source/WebKit/UIProcess/API/gtk/WebKitScriptDialogImpl.cpp:
(webkitScriptDialogImplNew):
(webkitScriptDialogImplConfirm):
* Source/WebKit/UIProcess/API/gtk/WebKitWebInspector.cpp:
(webkit_web_inspector_get_inspected_uri):
* Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseQueryTooltip):
(webkitWebViewBaseSetTooltipText):
* Source/WebKit/UIProcess/API/wpe/WebKitScriptDialogWPE.cpp:
(webkitScriptDialogAccept):
Canonical link:
https://flagged.apple.com:443/proxy?t2=dW6X4H5mZ7&o=aHR0cHM6Ly9jb21taXRzLndlYmtpdC5vcmcvMzIxMzgxQG1haW4=&emid=5b861f1c-d567-494d-bbe3-c367dd84edb2&c=11
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications