tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit 1690825dc308170df0bb28e4e06e4bae1a9fb000
parent fc74e7d237a19684bd4539645f36bdaacfcb1afe
Author: Dimi <dlee@mozilla.com>
Date:   Tue, 11 Nov 2025 09:47:39 +0000

Bug 1935981 - Improve "given-name" heuristic for Japan r=NeilDeakin,credential-management-reviewers

Differential Revision: https://phabricator.services.mozilla.com/D266778

Diffstat:
Mtoolkit/components/formautofill/shared/HeuristicsRegExp.sys.mjs | 11+++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/toolkit/components/formautofill/shared/HeuristicsRegExp.sys.mjs b/toolkit/components/formautofill/shared/HeuristicsRegExp.sys.mjs @@ -555,7 +555,7 @@ export const HeuristicsRegExp = { "|vorname" + // de-DE "|nombre" + // es "|forename|prénom|prenom" + // fr-FR - "|名" + // ja-JP + "|(^|[^\\p{L}\\p{N}])名([^\\p{L}\\p{N}]|$)" + // ja-JP "|nome" + // pt-BR, pt-PT "|Имя" + // ru "|نام" + // fa @@ -692,7 +692,14 @@ export const HeuristicsRegExp = { // lower-cased field name and get a rough equivalent of a case-insensitive // match. This avoids a performance cliff with the "iu" flag on regular // expressions. - regexps.push(`(${set[name].toLowerCase()})`.normalize("NFKC")); + let pattern = `(${set[name].toLowerCase()})`.normalize("NFKC"); + + // We should not lower case the \p{L} & \p{N} parts of the pattern, + // revert them back. + pattern = pattern.replaceAll("\\p{l}", "\\p{L}"); + pattern = pattern.replaceAll("\\p{n}", "\\p{N}"); + + regexps.push(pattern); } });