[php-src] PHP-8.5: lexbor: Run `update_lexbor.sh` (PHP 8.5)

Tim Düsterhus <[email protected]>
Newsgroups gmane.comp.php.cvs.general
Message-ID <[email protected]>
Author: Tim Düsterhus (TimWolla)
Date: 2026-06-30T00:40:46+02:00

Commit: https://github.com/php/php-src/commit/cf308c858c65aeb114ab89a668945379ad02893e
Raw diff: https://github.com/php/php-src/commit/cf308c858c65aeb114ab89a668945379ad02893e.diff

lexbor: Run `update_lexbor.sh` (PHP 8.5)

Changed paths:
  A  ext/lexbor/patches/0007-URL-fixed-setters-for-empty-hosts.patch
  D  ext/lexbor/patches/0007-Fix-empty-port-setter.patch
  M  ext/lexbor/patches/0001-Expose-line-and-column-information-for-use-in-PHP.patch
  M  ext/lexbor/patches/0002-Track-implied-added-nodes-for-options-use-in-PHP.patch
  M  ext/lexbor/patches/0003-Patch-utilities-and-data-structure-to-be-able-to-gen.patch
  M  ext/lexbor/patches/0004-Remove-unused-upper-case-tag-static-data.patch
  M  ext/lexbor/patches/0005-Shrink-size-of-static-binary-search-tree.patch
  M  ext/lexbor/patches/0006-Patch-out-unused-CSS-style-code.patch


Diff:

diff --git a/ext/lexbor/patches/0001-Expose-line-and-column-information-for-use-in-PHP.patch b/ext/lexbor/patches/0001-Expose-line-and-column-information-for-use-in-PHP.patch
index 1b35913e91c7..2f7f7f8f53c2 100644
--- a/ext/lexbor/patches/0001-Expose-line-and-column-information-for-use-in-PHP.patch
+++ b/ext/lexbor/patches/0001-Expose-line-and-column-information-for-use-in-PHP.patch
@@ -1,7 +1,7 @@
 From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
 From: Niels Dossche <[email protected]>
 Date: Sat, 26 Aug 2023 15:08:59 +0200
-Subject: [PATCH 1/6] Expose line and column information for use in PHP
+Subject: [PATCH 1/7] Expose line and column information for use in PHP
 
 ---
  source/lexbor/dom/interfaces/node.h  |  2 ++
diff --git a/ext/lexbor/patches/0002-Track-implied-added-nodes-for-options-use-in-PHP.patch b/ext/lexbor/patches/0002-Track-implied-added-nodes-for-options-use-in-PHP.patch
index 24bc21630513..d25819d43ed0 100644
--- a/ext/lexbor/patches/0002-Track-implied-added-nodes-for-options-use-in-PHP.patch
+++ b/ext/lexbor/patches/0002-Track-implied-added-nodes-for-options-use-in-PHP.patch
@@ -1,7 +1,7 @@
 From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
 From: Niels Dossche <[email protected]>
 Date: Mon, 14 Aug 2023 20:18:51 +0200
-Subject: [PATCH 2/6] Track implied added nodes for options use in PHP
+Subject: [PATCH 2/7] Track implied added nodes for options use in PHP
 
 ---
  source/lexbor/html/tree.h                            | 3 +++
diff --git a/ext/lexbor/patches/0003-Patch-utilities-and-data-structure-to-be-able-to-gen.patch b/ext/lexbor/patches/0003-Patch-utilities-and-data-structure-to-be-able-to-gen.patch
index 9c67ba740c4a..c3ad688c3cb3 100644
--- a/ext/lexbor/patches/0003-Patch-utilities-and-data-structure-to-be-able-to-gen.patch
+++ b/ext/lexbor/patches/0003-Patch-utilities-and-data-structure-to-be-able-to-gen.patch
@@ -1,7 +1,7 @@
 From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
 From: Niels Dossche <[email protected]>
 Date: Thu, 24 Aug 2023 22:57:48 +0200
-Subject: [PATCH 3/6] Patch utilities and data structure to be able to generate
+Subject: [PATCH 3/7] Patch utilities and data structure to be able to generate
  smaller lookup tables
 
 Changed the generation script to check if everything fits in 32-bits.
diff --git a/ext/lexbor/patches/0004-Remove-unused-upper-case-tag-static-data.patch b/ext/lexbor/patches/0004-Remove-unused-upper-case-tag-static-data.patch
index 4640a03647b9..5d1e9da8e4d1 100644
--- a/ext/lexbor/patches/0004-Remove-unused-upper-case-tag-static-data.patch
+++ b/ext/lexbor/patches/0004-Remove-unused-upper-case-tag-static-data.patch
@@ -1,7 +1,7 @@
 From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
 From: Niels Dossche <[email protected]>
 Date: Wed, 29 Nov 2023 21:26:47 +0100
-Subject: [PATCH 4/6] Remove unused upper case tag static data
+Subject: [PATCH 4/7] Remove unused upper case tag static data
 
 ---
  source/lexbor/tag/res.h | 2 ++
diff --git a/ext/lexbor/patches/0005-Shrink-size-of-static-binary-search-tree.patch b/ext/lexbor/patches/0005-Shrink-size-of-static-binary-search-tree.patch
index d276ba8f2efa..1d54615a9139 100644
--- a/ext/lexbor/patches/0005-Shrink-size-of-static-binary-search-tree.patch
+++ b/ext/lexbor/patches/0005-Shrink-size-of-static-binary-search-tree.patch
@@ -1,7 +1,7 @@
 From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
 From: Niels Dossche <[email protected]>
 Date: Wed, 29 Nov 2023 21:29:31 +0100
-Subject: [PATCH 5/6] Shrink size of static binary search tree
+Subject: [PATCH 5/7] Shrink size of static binary search tree
 
 This also makes it more efficient on the data cache.
 ---
diff --git a/ext/lexbor/patches/0006-Patch-out-unused-CSS-style-code.patch b/ext/lexbor/patches/0006-Patch-out-unused-CSS-style-code.patch
index 827375f3f05c..891a2d5682d5 100644
--- a/ext/lexbor/patches/0006-Patch-out-unused-CSS-style-code.patch
+++ b/ext/lexbor/patches/0006-Patch-out-unused-CSS-style-code.patch
@@ -1,7 +1,7 @@
 From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
 From: Niels Dossche <[email protected]>
 Date: Sun, 7 Jan 2024 21:59:28 +0100
-Subject: [PATCH 6/6] Patch out unused CSS style code
+Subject: [PATCH 6/7] Patch out unused CSS style code
 
 ---
  source/lexbor/css/rule.h | 2 ++
diff --git a/ext/lexbor/patches/0007-Fix-empty-port-setter.patch b/ext/lexbor/patches/0007-URL-fixed-setters-for-empty-hosts.patch
similarity index 91%
rename from ext/lexbor/patches/0007-Fix-empty-port-setter.patch
rename to ext/lexbor/patches/0007-URL-fixed-setters-for-empty-hosts.patch
index 75ceaab0c63f..72a88d22ab8e 100644
--- a/ext/lexbor/patches/0007-Fix-empty-port-setter.patch
+++ b/ext/lexbor/patches/0007-URL-fixed-setters-for-empty-hosts.patch
@@ -1,7 +1,7 @@
-From cf07699ca0f5fa4e1f7fd05c2135fd38e6d196c2 Mon Sep 17 00:00:00 2001
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
 From: Alexander Borisov <[email protected]>
 Date: Fri, 26 Jun 2026 18:55:56 +0300
-Subject: [PATCH] URL: fixed setters for empty hosts.
+Subject: [PATCH 7/7] URL: fixed setters for empty hosts.
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
@@ -22,13 +22,13 @@ This relates to #387 issue on GitHub.
  3 files changed, 86 insertions(+), 9 deletions(-)
 
 diff --git a/source/lexbor/url/url.c b/source/lexbor/url/url.c
-index ced4462b..e1da2c38 100644
+index 5a11434..86bcf8f 100644
 --- a/source/lexbor/url/url.c
 +++ b/source/lexbor/url/url.c
-@@ -1116,11 +1116,13 @@ lxb_url_host_copy(const lxb_url_host_t *src, lxb_url_host_t *dst,
-
+@@ -1115,11 +1115,13 @@ lxb_url_host_copy(const lxb_url_host_t *src, lxb_url_host_t *dst,
+ 
      dst->type = src->type;
-
+ 
 -    if (src->type <= LXB_URL_HOST_TYPE_OPAQUE) {
 -        if (src->type == LXB_URL_HOST_TYPE__UNDEF) {
 -            return LXB_STATUS_OK;
@@ -38,15 +38,15 @@ index ced4462b..e1da2c38 100644
 +    {
 +        return LXB_STATUS_OK;
 +    }
-
+ 
 +    if (src->type <= LXB_URL_HOST_TYPE_OPAQUE) {
          return lxb_url_str_copy(&src->u.domain,
                                  &dst->u.domain, dst_mraw);
      }
-@@ -1153,6 +1155,24 @@ lxb_url_host_set_empty(lxb_url_host_t *host, lexbor_mraw_t *mraw)
+@@ -1152,6 +1154,24 @@ lxb_url_host_set_empty(lxb_url_host_t *host, lexbor_mraw_t *mraw)
      host->type = LXB_URL_HOST_TYPE_EMPTY;
  }
-
+ 
 +lxb_inline bool
 +lxb_url_host_is_empty(const lxb_url_host_t *host)
 +{
@@ -68,7 +68,7 @@ index ced4462b..e1da2c38 100644
  static bool
  lxb_url_host_eq(lxb_url_host_t *host, const lxb_char_t *data, size_t length)
  {
-@@ -1252,7 +1272,7 @@ lxb_url_normalized_windows_drive_letter(const lxb_char_t *data,
+@@ -1251,7 +1271,7 @@ lxb_url_normalized_windows_drive_letter(const lxb_char_t *data,
  static bool
  lxb_url_cannot_have_user_pass_port(lxb_url_t *url)
  {
@@ -77,20 +77,20 @@ index ced4462b..e1da2c38 100644
      || url->host.type == LXB_URL_HOST_TYPE__UNDEF
      || url->scheme.type == LXB_URL_SCHEMEL_TYPE_FILE;
  }
-@@ -3979,6 +3999,11 @@ lxb_url_opaque_host_parse(lxb_url_parser_t *parser, const lxb_char_t *data,
+@@ -3978,6 +3998,11 @@ lxb_url_opaque_host_parse(lxb_url_parser_t *parser, const lxb_char_t *data,
      lxb_status_t status;
      const lxb_char_t *p;
-
+ 
 +    if (data == end) {
 +        lxb_url_host_set_empty(host, mraw);
 +        return LXB_STATUS_OK;
 +    }
 +
      p = data;
-
+ 
      while (p < end) {
 diff --git a/test/files/lexbor/url/changes.ton b/test/files/lexbor/url/changes.ton
-index 07bc9449..1a0b6e35 100644
+index 07bc944..1a0b6e3 100644
 --- a/test/files/lexbor/url/changes.ton
 +++ b/test/files/lexbor/url/changes.ton
 @@ -1,5 +1,5 @@
@@ -167,7 +167,7 @@ index 07bc9449..1a0b6e35 100644
      }
  ]
 diff --git a/test/files/lexbor/url/url.ton b/test/files/lexbor/url/url.ton
-index 2baa4bc2..85794c5b 100644
+index 2baa4bc..85794c5 100644
 --- a/test/files/lexbor/url/url.ton
 +++ b/test/files/lexbor/url/url.ton
 @@ -1,5 +1,5 @@
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.