Projects
Factory:RISC-V:Gnome
glib2
_service:tar_scm:backport-gregex-do-not-set-mat...
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File _service:tar_scm:backport-gregex-do-not-set-match-and-recursion-limits-on-match-context.patch of Package glib2
From 6535c77b00a444750148d9d658e4d47214bb4562 Mon Sep 17 00:00:00 2001 From: Aleksei Rybalkin <aleksei@rybalkin.org> Date: Mon, 25 Jul 2022 16:48:03 +0200 Subject: [PATCH] gregex: do not set match and recursion limits on match context These are not really necessary, and cause breakages (e.g. #2700). pcre2_set_recursion_limit is also deprecated. Fixes: #2700 Conflict:NA Reference:https://gitlab.gnome.org/GNOME/glib/-/commit/6535c77b00a444750148d9d658e4d47214bb4562 --- glib/gregex.c | 2 -- glib/tests/regex.c | 3 +++ 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/glib/gregex.c b/glib/gregex.c index 6741d2479f..dd61dc4813 100644 --- a/glib/gregex.c +++ b/glib/gregex.c @@ -769,8 +769,6 @@ match_info_new (const GRegex *regex, &match_info->n_subpatterns); match_info->match_context = pcre2_match_context_create (NULL); - pcre2_set_match_limit (match_info->match_context, 65536); /* should be plenty */ - pcre2_set_recursion_limit (match_info->match_context, 64); /* should be plenty */ if (is_dfa) { diff --git a/glib/tests/regex.c b/glib/tests/regex.c index bb1a5ff762..5839465fae 100644 --- a/glib/tests/regex.c +++ b/glib/tests/regex.c @@ -2493,6 +2493,9 @@ main (int argc, char *argv[]) TEST_MATCH("[DŽ]", G_REGEX_CASELESS, 0, "dž", -1, 0, 0, TRUE); TEST_MATCH("[DŽ]", G_REGEX_CASELESS, 0, "Dž", -1, 0, 0, TRUE); + /* see https://gitlab.gnome.org/GNOME/glib/-/issues/2700 */ + TEST_MATCH("(\n.+)+", G_REGEX_DEFAULT, 0, "\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n", -1, 0, 0, TRUE); + /* TEST_MATCH_NEXT#(pattern, string, string_len, start_position, ...) */ TEST_MATCH_NEXT0("a", "x", -1, 0); TEST_MATCH_NEXT0("a", "ax", -1, 1); -- GitLab
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.
浙ICP备2022010568号-2