From debbugs-submit-bounces@debbugs.gnu.org Sun May 19 16:20:19 2019 Received: (at submit) by debbugs.gnu.org; 19 May 2019 20:20:19 +0000 Received: from localhost ([127.0.0.1]:35613 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hSSI7-0005iG-CL for submit@debbugs.gnu.org; Sun, 19 May 2019 16:20:19 -0400 Received: from eggs.gnu.org ([209.51.188.92]:60605) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hSSI5-0005hx-RR for submit@debbugs.gnu.org; Sun, 19 May 2019 16:20:18 -0400 Received: from lists.gnu.org ([209.51.188.17]:37539) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hSSI0-0007e4-6K for submit@debbugs.gnu.org; Sun, 19 May 2019 16:20:12 -0400 Received: from eggs.gnu.org ([209.51.188.92]:46670) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hSSHy-0005Zb-OR for bug-gnu-emacs@gnu.org; Sun, 19 May 2019 16:20:11 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,RCVD_IN_DNSWL_NONE, URIBL_BLOCKED autolearn=disabled version=3.3.2 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hSS5p-0008VK-LG for bug-gnu-emacs@gnu.org; Sun, 19 May 2019 16:07:38 -0400 Received: from bee.dogwood.relay.mailchannels.net ([23.83.211.14]:26348) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hSS5T-0007q1-Gm for bug-gnu-emacs@gnu.org; Sun, 19 May 2019 16:07:37 -0400 Received: from relay.mailchannels.net (localhost [127.0.0.1]) by relay.mailchannels.net (Postfix) with ESMTP id C15775E1A15 for ; Sun, 19 May 2019 20:06:57 +0000 (UTC) Received: from pdx1-sub0-mail-a42.g.dreamhost.com (100-96-87-17.trex.outbound.svc.cluster.local [100.96.87.17]) (Authenticated sender: dreamhost) by relay.mailchannels.net (Postfix) with ESMTPA id 5E3745E06BA for ; Sun, 19 May 2019 20:06:42 +0000 (UTC) Received: from pdx1-sub0-mail-a42.g.dreamhost.com ([TEMPUNAVAIL]. [64.90.62.162]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384) by 0.0.0.0:2500 (trex/5.17.2); Sun, 19 May 2019 20:06:57 +0000 Received: from pdx1-sub0-mail-a42.g.dreamhost.com (localhost [127.0.0.1]) by pdx1-sub0-mail-a42.g.dreamhost.com (Postfix) with ESMTP id 04EF78004A for ; Sun, 19 May 2019 13:06:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=linkov.net; h=from:to :subject:date:message-id:mime-version:content-type; s= linkov.net; bh=G3MdEsxzwe2aOOkLYRVeZuO2Awc=; b=cVwPaGRkhu24Qr5mK 7bAKIZQc/1VgYJGJS5OxPt5Vmk2/o5UHwX204/ZqTcZDyiQoIYGAF+gEa3DRCFJ9 eeqkBunWzcaJpWmJ8ZkEp6XTfiBs6ODG/VRTKerIZ8/7r5ArbRzZJP5l5CZBkZ9R 2Kofq6SGKvFa5DilnVZypITw88= Received: from mail.jurta.org (m91-129-96-230.cust.tele2.ee [91.129.96.230]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: jurta@jurta.org) by pdx1-sub0-mail-a42.g.dreamhost.com (Postfix) with ESMTPSA id 6EACB80045 for ; Sun, 19 May 2019 13:06:36 -0700 (PDT) X-DH-BACKEND: pdx1-sub0-mail-a42 From: Juri Linkov To: bug-gnu-emacs@gnu.org Subject: Broken data loaded from uni-decomposition Organization: LINKOV.NET Date: Sun, 19 May 2019 22:46:07 +0300 Message-ID: <878sv2idc0.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-VR-OUT-STATUS: OK X-VR-OUT-SCORE: 0 X-VR-OUT-SPAMCAUSE: gggruggvucftvghtrhhoucdtuddrgeduuddruddtiedgudeglecutefuodetggdotefrodftvfcurfhrohhfihhlvgemucggtfgfnhhsuhgsshgtrhhisggvpdfftffgtefojffquffvnecuuegrihhlohhuthemuceftddtnecunecujfgurhephffvufhofffkfgggtgesthdtredttdertdenucfhrhhomheplfhurhhiucfnihhnkhhovhcuoehjuhhriheslhhinhhkohhvrdhnvghtqeenucfkphepledurdduvdelrdeliedrvdeftdenucfrrghrrghmpehmohguvgepshhmthhppdhhvghlohepmhgrihhlrdhjuhhrthgrrdhorhhgpdhinhgvthepledurdduvdelrdeliedrvdeftddprhgvthhurhhnqdhprghthheplfhurhhiucfnihhnkhhovhcuoehjuhhriheslhhinhhkohhvrdhnvghtqedpmhgrihhlfhhrohhmpehjuhhriheslhhinhhkohhvrdhnvghtpdhnrhgtphhtthhopegsuhhgqdhgnhhuqdgvmhgrtghssehgnhhurdhorhhgnecuvehluhhsthgvrhfuihiivgeptd X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 23.83.211.14 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Spam-Score: -1.4 (-) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.4 (--) While adding defcustoms for char-fold in bug#35689, I encountered a problem where calling `(setq char-fold-table (char-fold-make-table))' garbled data returned by `(unicode-property-table-internal 'decomposition)'. This happens only with my customizations, so I tried to narrow down what customization caused this, so here is the minimal test case: 0. emacs -Q 1. Eval: (equal (progn (load "international/uni-decomposition.el" t t t t) (aref (cdr (assq 'decomposition char-code-property-alist)) 1024)) (progn (let ((search-spaces-regexp "\\(\\s-\\|\n\\)+")) (load "international/uni-decomposition.el" t t t t)) (aref (cdr (assq 'decomposition char-code-property-alist)) 1024))) => nil But should return `t'. I customized `search-whitespace-regexp' (whose value isearch sets to `search-spaces-regexp') to a legitimate value, but `unicode-property-table-internal' used in char-fold.el fails to correctly load "uni-decomposition.el", thus breaking the char-fold search. From debbugs-submit-bounces@debbugs.gnu.org Thu Jun 06 13:07:14 2019 Received: (at 35802) by debbugs.gnu.org; 6 Jun 2019 17:07:14 +0000 Received: from localhost ([127.0.0.1]:50520 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hYvr6-0001b6-6r for submit@debbugs.gnu.org; Thu, 06 Jun 2019 13:07:14 -0400 Received: from mail-it1-f172.google.com ([209.85.166.172]:52312) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hYvr4-0001ar-0C for 35802@debbugs.gnu.org; Thu, 06 Jun 2019 13:07:10 -0400 Received: by mail-it1-f172.google.com with SMTP id l21so1144817ita.2 for <35802@debbugs.gnu.org>; Thu, 06 Jun 2019 10:07:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=1tCibyjd8hcnQ2jBQh/UVc17Tx/MMEQ32deHn4X1YC0=; b=c9jaoWxysIdwXQ66wZ4feiV5ig6b/5u5v0D+hGs4LEDN75zrjlLfsCrq2QalND5/XC +nT+Ot9rQMFV3oz6OQiXPPxHm7O0T9Crxgdv/QSothGwqS7fxAWuwSVFtE3Xzdwde5pG pbdHJRvxuAw4NuyC+SQWJ7qI4w80yunbj4vXlE4Bz/uOUvbaJatvL5Eh+zvZkLK70FsN psl06RzYpsDktvBZmROQSQkIe0RNe1ddHNT6sg8qjUohsdeCQh84XDEL12GAeT5pPrBS 5WinU2k4xvV9JGtnHn1gW5RznySjMOs5C675tG5ZPoGVazNPKmHgoFqjlkniuXYDl2Mt pzUQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=1tCibyjd8hcnQ2jBQh/UVc17Tx/MMEQ32deHn4X1YC0=; b=lTyzDdDjkUhJtskDCMfxA6YKv10UextbqaKYdQALaZwxXWWlMptzji5ipEKD7qT71T PUO1pYDqVx1troXWq7Ynvo21K8eXwtcAHDz3HcJBy6nepmVFrQSY3N+ib1cFuqTHw/33 uZpJp+u3Dwbur+qOA5IGOrJWQ2hstHKf2b4wAFDEFPdv4iXxNiV0zuF8xieVY58sx1ox dM7FMP4E9d3KPO1oqG4mzx1pgnBTZlnUERQDJWVqYd2cHsMgDRaw5Fog62rALvkmrDCz yvbs21jj4mKOaAhLvhFRmpUfhAUtc+F4wIaOmdfw9aVgojVy8moJBucNrQGD4pSXDzHi YPZQ== X-Gm-Message-State: APjAAAX62eU3KLwOp+vwEY+ssKeYTtIpA4kjpUcVaU9hIwRbHRWq3hbe eNzHiK/xu7MmZMb5NTfiTXH4KmjA X-Google-Smtp-Source: APXvYqwPG83g5bprjOzANiI8cXnuOlXrNU+Smm/wTm30retexfdp5oAw+40CenKKkS6x8aiNZ+zfvQ== X-Received: by 2002:a24:cd87:: with SMTP id l129mr977573itg.55.1559840824064; Thu, 06 Jun 2019 10:07:04 -0700 (PDT) Received: from vhost2 (CPE001143542e1f-CMf81d0f809fa0.cpe.net.cable.rogers.com. [99.230.51.196]) by smtp.gmail.com with ESMTPSA id 3sm1158885itm.25.2019.06.06.10.07.02 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 06 Jun 2019 10:07:03 -0700 (PDT) From: npostavs@gmail.com To: Juri Linkov Subject: Re: bug#35802: Broken data loaded from uni-decomposition References: <878sv2idc0.fsf@mail.linkov.net> Date: Thu, 06 Jun 2019 13:07:01 -0400 In-Reply-To: <878sv2idc0.fsf@mail.linkov.net> (Juri Linkov's message of "Sun, 19 May 2019 22:46:07 +0300") Message-ID: <85k1dybq2y.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1.92 (windows-nt) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 35802 Cc: 35802@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Juri Linkov writes: > But should return `t'. I customized `search-whitespace-regexp' > (whose value isearch sets to `search-spaces-regexp') to a legitimate > value, but `unicode-property-table-internal' used in char-fold.el fails > to correctly load "uni-decomposition.el", thus breaking the char-fold search. The problem is that this messes up a search in find-auto-coding: (if (re-search-forward "[\r\n]\\([^\r\n]*\\)[ \t]*Local Variables:[ \t]*\\([^\r\n]*\\)[\r\n]" tail-end t) ... (let* ((prefix (regexp-quote (match-string 1))) (suffix (regexp-quote (match-string 2))) The space between "Local Variables" becomes "\\(\\s-\\|\n\\)+" which is a problem because it adds a new capturing group, which means suffix gets the wrong value. Then we fail to find the ";; End:" line, and don't apply the "coding: utf-8" setting. So the value you chose isn't entirely legitimate, you should use a shy group instead: (equal (progn (load "international/uni-decomposition.el" t t t t) (aref (cdr (assq 'decomposition char-code-property-alist)) 1024)) (progn (let ((search-spaces-regexp "\\(?:\\s-\\|\n\\)+")) (load "international/uni-decomposition.el" t t t t)) (aref (cdr (assq 'decomposition char-code-property-alist)) 1024))) ;=> t And possibly let-binding search-spaces-regexp in find-auto-coding would make sense (although, there's probably more places like this that might break, not sure if we can ever hope to find them all). From debbugs-submit-bounces@debbugs.gnu.org Thu Jun 06 16:53:51 2019 Received: (at 35802) by debbugs.gnu.org; 6 Jun 2019 20:53:51 +0000 Received: from localhost ([127.0.0.1]:50666 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hYzOQ-0000b1-LG for submit@debbugs.gnu.org; Thu, 06 Jun 2019 16:53:50 -0400 Received: from beige.elm.relay.mailchannels.net ([23.83.212.16]:38226) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hYzOO-0000ar-MI for 35802@debbugs.gnu.org; Thu, 06 Jun 2019 16:53:49 -0400 X-Sender-Id: dreamhost|x-authsender|jurta@jurta.org Received: from relay.mailchannels.net (localhost [127.0.0.1]) by relay.mailchannels.net (Postfix) with ESMTP id 71D261A20BB; Thu, 6 Jun 2019 20:53:47 +0000 (UTC) Received: from pdx1-sub0-mail-a51.g.dreamhost.com (100-96-4-95.trex.outbound.svc.cluster.local [100.96.4.95]) (Authenticated sender: dreamhost) by relay.mailchannels.net (Postfix) with ESMTPA id CDBA51A2078; Thu, 6 Jun 2019 20:53:46 +0000 (UTC) X-Sender-Id: dreamhost|x-authsender|jurta@jurta.org Received: from pdx1-sub0-mail-a51.g.dreamhost.com ([TEMPUNAVAIL]. [64.90.62.162]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384) by 0.0.0.0:2500 (trex/5.17.2); Thu, 06 Jun 2019 20:53:47 +0000 X-MC-Relay: Neutral X-MailChannels-SenderId: dreamhost|x-authsender|jurta@jurta.org X-MailChannels-Auth-Id: dreamhost X-Army-Battle: 059d3902083b8a74_1559854427247_3946379288 X-MC-Loop-Signature: 1559854427247:2748609386 X-MC-Ingress-Time: 1559854427246 Received: from pdx1-sub0-mail-a51.g.dreamhost.com (localhost [127.0.0.1]) by pdx1-sub0-mail-a51.g.dreamhost.com (Postfix) with ESMTP id 664DC83610; Thu, 6 Jun 2019 13:53:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=linkov.net; h=from:to:cc :subject:references:date:in-reply-to:message-id:mime-version :content-type:content-transfer-encoding; s=linkov.net; bh=vL6pIR xx4j3YYLSD8zwaE/G05s4=; b=gFxcDV8T88aand8Kkr3+C4YWTHwWGSXLRDyu+/ /Nf+oJ19WVpBwEbSpW/ESwZt5vm7Sbhs12eT0ZjRI4bYGhQ+f6eF0JHkTdX+9D9c mOrDwQWfURcE273kB/yaVIQmMokWznVUGFPW/n8cRxGxyxA+T71QY9U46lDTg3AY 1gd/s= Received: from mail.jurta.org (m91-129-96-73.cust.tele2.ee [91.129.96.73]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: jurta@jurta.org) by pdx1-sub0-mail-a51.g.dreamhost.com (Postfix) with ESMTPSA id 95C8B8360A; Thu, 6 Jun 2019 13:53:37 -0700 (PDT) X-DH-BACKEND: pdx1-sub0-mail-a51 From: Juri Linkov To: npostavs@gmail.com Subject: Re: bug#35802: Broken data loaded from uni-decomposition Organization: LINKOV.NET References: <878sv2idc0.fsf@mail.linkov.net> <85k1dybq2y.fsf@gmail.com> Date: Thu, 06 Jun 2019 23:41:35 +0300 In-Reply-To: <85k1dybq2y.fsf@gmail.com> (npostavs@gmail.com's message of "Thu, 06 Jun 2019 13:07:01 -0400") Message-ID: <87v9xie9a8.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 X-VR-OUT-STATUS: OK X-VR-OUT-SCORE: 0 X-VR-OUT-SPAMCAUSE: gggruggvucftvghtrhhoucdtuddrgeduuddrudeggedgudehiecutefuodetggdotefrodftvfcurfhrohhfihhlvgemucggtfgfnhhsuhgsshgtrhhisggvpdfftffgtefojffquffvnecuuegrihhlohhuthemuceftddtnecunecujfgurhephffvufhofhffjgfkfgggtgfgsehtkeertddtreejnecuhfhrohhmpefluhhrihcunfhinhhkohhvuceojhhurhhisehlihhnkhhovhdrnhgvtheqnecukfhppeeluddruddvledrleeirdejfeenucfrrghrrghmpehmohguvgepshhmthhppdhhvghlohepmhgrihhlrdhjuhhrthgrrdhorhhgpdhinhgvthepledurdduvdelrdeliedrjeefpdhrvghtuhhrnhdqphgrthhhpefluhhrihcunfhinhhkohhvuceojhhurhhisehlihhnkhhovhdrnhgvtheqpdhmrghilhhfrhhomhepjhhurhhisehlihhnkhhovhdrnhgvthdpnhhrtghpthhtohepnhhpohhsthgrvhhssehgmhgrihhlrdgtohhmnecuvehluhhsthgvrhfuihiivgepud Content-Transfer-Encoding: quoted-printable X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 35802 Cc: 35802@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) >> But should return `t'. I customized `search-whitespace-regexp' >> (whose value isearch sets to `search-spaces-regexp') to a legitimate >> value, but `unicode-property-table-internal' used in char-fold.el fail= s >> to correctly load "uni-decomposition.el", thus breaking the char-fold = search. > > The problem is that this messes up a search in find-auto-coding: Thanks for finding this. > (if (re-search-forward > "[\r\n]\\([^\r\n]*\\)[ \t]*Local Variables:[ \t]*\\([^\r\n]*= \\)[\r\n]" > tail-end t) > ... > (let* ((prefix (regexp-quote (match-string 1))) > (suffix (regexp-quote (match-string 2))) > > The space between "Local Variables" becomes "\\(\\s-\\|\n\\)+" which is > a problem because it adds a new capturing group, which means suffix get= s > the wrong value. Then we fail to find the ";; End:" line, and don't > apply the "coding: utf-8" setting. When this feature is used in Isearch, the documented way to avoid this pr= oblem is to replace the space with =E2=80=98[ ]=E2=80=99, i.e. to use "Local[ ]Variables:" > So the value you chose isn't entirely legitimate, you should use a shy > group instead: > > (equal (progn (load "international/uni-decomposition.el" t t t t) > (aref (cdr (assq 'decomposition char-code-property-alist)= ) 1024)) > (progn (let ((search-spaces-regexp "\\(?:\\s-\\|\n\\)+")) > (load "international/uni-decomposition.el" t t t t)) > (aref (cdr (assq 'decomposition char-code-property-alist)= ) 1024))) > ;=3D> t Maybe this gotcha should be mentioned in the documentation of search-spaces-regexp and search-whitespace-regexp? > And possibly let-binding search-spaces-regexp in find-auto-coding would > make sense (although, there's probably more places like this that might > break, not sure if we can ever hope to find them all). This is almost the same class of problems as wrapping re-search-forward in save-match-data, so finding all places that affect matching elsewhere will take time. From debbugs-submit-bounces@debbugs.gnu.org Tue Jun 11 10:18:52 2019 Received: (at 35802) by debbugs.gnu.org; 11 Jun 2019 14:18:52 +0000 Received: from localhost ([127.0.0.1]:59898 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hahbv-0003w1-F0 for submit@debbugs.gnu.org; Tue, 11 Jun 2019 10:18:51 -0400 Received: from mail-io1-f42.google.com ([209.85.166.42]:38699) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hahbt-0003vm-Cz for 35802@debbugs.gnu.org; Tue, 11 Jun 2019 10:18:49 -0400 Received: by mail-io1-f42.google.com with SMTP id k13so10013657iop.5 for <35802@debbugs.gnu.org>; Tue, 11 Jun 2019 07:18:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=NLop4d/LX40iw4aR2/qjNMaMaHsEXPgOTNFwX+z/F2U=; b=Pp3/jCfKN9ntvWusmRFewhoTH93xCqKTkbN1pEipK+1QrlD/vrOQcuL+Y09wVbZrzd 5aH9wQUVf/SqwkRBOOEJ6oEaC9irJTp4FxzEgyRhd4O5aI+Cttv+RC9Bz0vE1VDVqfC9 ZG14vlOlPjQYyNtnia4hQAf0oaDgQ9iTeAL+gC5wAY7KXg8UeyW4TUjr6sG4V44KsmgS MxRduJul10CxeKI7+BKMVJJqukXgiU0DVXkydHe65PlYkQ2lFJqzzHOr599gbwktOgTe o8TJ7d5jGmPh+TGGGtsBZg8kpaD5jUK+J9VQ7fQGFK6kpCKyxrC4auaaR9/XtMqhyWcH OLdw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=NLop4d/LX40iw4aR2/qjNMaMaHsEXPgOTNFwX+z/F2U=; b=CoM+Lm5odEfznLnXf8f+26qKqgmi6jxKIUWzm/rCmZ89oCujjHLqZOPR57Qn1AiZ8u 97IFrwm7OSdsjE2NwClJSWOlRaoyKYP1P4hqn/j+VVeNZZ/uG0n06XCW3JePHezVpBeL tBLXgBZV1fJVzzdmpcUEIhMSpVvkDQopnt8tQzkaz1gjXA4Zrms9T8tED75xlgNFZ1ni VPSBmZOYh8Oiu0kDFbF3CSDyvp1xINKH0tsTbLpbAtaqqnizAId4nW+a9dSgiLc3gDUk gAvbNLubnjV9lHQ3S+hNOqPFOqaAmWaPvJ0hJNuY/s2lzj2hkE9GP80US1y0Z/kVKajf EvrA== X-Gm-Message-State: APjAAAUD1+fXqH+yxA5dF1teYbUPVRlitx27ISva3tTIsTtsNBdI6NgZ hv4G6Assw02pYutM/QwlL20dJNLi X-Google-Smtp-Source: APXvYqzCH9RBKT2xZaxu/6YEpUd1O11rSBacuaG+R+Oc/HTSI1wpfpUWTS4g66RZzfHr5OquHHuYNg== X-Received: by 2002:a6b:2cc7:: with SMTP id s190mr44264777ios.29.1560262723572; Tue, 11 Jun 2019 07:18:43 -0700 (PDT) Received: from vhost2 (CPE001143542e1f-CMf81d0f809fa0.cpe.net.cable.rogers.com. [99.230.51.196]) by smtp.gmail.com with ESMTPSA id t133sm5106149iof.21.2019.06.11.07.18.41 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 11 Jun 2019 07:18:42 -0700 (PDT) From: npostavs@gmail.com To: Juri Linkov Subject: Re: bug#35802: Broken data loaded from uni-decomposition References: <878sv2idc0.fsf@mail.linkov.net> <85k1dybq2y.fsf@gmail.com> <87v9xie9a8.fsf@mail.linkov.net> Date: Tue, 11 Jun 2019 10:18:41 -0400 In-Reply-To: <87v9xie9a8.fsf@mail.linkov.net> (Juri Linkov's message of "Thu, 06 Jun 2019 23:41:35 +0300") Message-ID: <854l4wb3y6.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1.92 (windows-nt) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 35802 Cc: 35802@debbugs.gnu.org, npostavs@gmail.com X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Juri Linkov writes: >> And possibly let-binding search-spaces-regexp in find-auto-coding would >> make sense (although, there's probably more places like this that might >> break, not sure if we can ever hope to find them all). > > This is almost the same class of problems as wrapping re-search-forward > in save-match-data, so finding all places that affect matching elsewhere > will take time. Actually maybe it's just a matter of making isearch bind search-spaces-regexp less widely. I'm not quite following when the your problem happens though. Can you show a backtrace from your original problem using (add-hook 'after-load-functions (lambda (f) (when (string-match-p "uni-decomposition" f) (debug nil :search-spaces-regexp search-spaces-regexp)))) From debbugs-submit-bounces@debbugs.gnu.org Tue Jun 11 17:52:12 2019 Received: (at 35802) by debbugs.gnu.org; 11 Jun 2019 21:52:12 +0000 Received: from localhost ([127.0.0.1]:60318 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1haoge-0002Dl-0p for submit@debbugs.gnu.org; Tue, 11 Jun 2019 17:52:12 -0400 Received: from cheetah.birch.relay.mailchannels.net ([23.83.209.34]:26278) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1haogc-0002Dc-OJ for 35802@debbugs.gnu.org; Tue, 11 Jun 2019 17:52:11 -0400 X-Sender-Id: dreamhost|x-authsender|jurta@jurta.org Received: from relay.mailchannels.net (localhost [127.0.0.1]) by relay.mailchannels.net (Postfix) with ESMTP id 6ACE13417FB; Tue, 11 Jun 2019 21:52:09 +0000 (UTC) Received: from pdx1-sub0-mail-a2.g.dreamhost.com (100-96-28-110.trex.outbound.svc.cluster.local [100.96.28.110]) (Authenticated sender: dreamhost) by relay.mailchannels.net (Postfix) with ESMTPA id E3A4A3416E7; Tue, 11 Jun 2019 21:52:08 +0000 (UTC) X-Sender-Id: dreamhost|x-authsender|jurta@jurta.org Received: from pdx1-sub0-mail-a2.g.dreamhost.com ([TEMPUNAVAIL]. [64.90.62.162]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384) by 0.0.0.0:2500 (trex/5.17.2); Tue, 11 Jun 2019 21:52:09 +0000 X-MC-Relay: Neutral X-MailChannels-SenderId: dreamhost|x-authsender|jurta@jurta.org X-MailChannels-Auth-Id: dreamhost X-Hook-Print: 196cd636386868be_1560289929250_3505959710 X-MC-Loop-Signature: 1560289929250:255872004 X-MC-Ingress-Time: 1560289929249 Received: from pdx1-sub0-mail-a2.g.dreamhost.com (localhost [127.0.0.1]) by pdx1-sub0-mail-a2.g.dreamhost.com (Postfix) with ESMTP id E13CC7FD9E; Tue, 11 Jun 2019 14:52:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=linkov.net; h=from:to:cc :subject:references:date:in-reply-to:message-id:mime-version :content-type; s=linkov.net; bh=FJFHK6D1Oz4XesoltsbUqDu283Q=; b= xvvEwwVC4DuB7J6QrleZbQK0GNhoB3/oucTQhmVH8zmWwybWUwg6YBzrLxX+qezT c4TAvZOJKc93yyc+/fJBr1z/8QbzSnl8fupJEwjnbo/GNiiL15xhxX0ttSGGEolh vY6X8b+/0iCebV1aLqZbzIKiVPnFtsXz66TKznEBSB0= Received: from mail.jurta.org (m91-129-109-209.cust.tele2.ee [91.129.109.209]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: jurta@jurta.org) by pdx1-sub0-mail-a2.g.dreamhost.com (Postfix) with ESMTPSA id 1CCC87FD8B; Tue, 11 Jun 2019 14:52:02 -0700 (PDT) X-DH-BACKEND: pdx1-sub0-mail-a2 From: Juri Linkov To: npostavs@gmail.com Subject: Re: bug#35802: Broken data loaded from uni-decomposition Organization: LINKOV.NET References: <878sv2idc0.fsf@mail.linkov.net> <85k1dybq2y.fsf@gmail.com> <87v9xie9a8.fsf@mail.linkov.net> <854l4wb3y6.fsf@gmail.com> Date: Wed, 12 Jun 2019 00:11:33 +0300 In-Reply-To: <854l4wb3y6.fsf@gmail.com> (npostavs@gmail.com's message of "Tue, 11 Jun 2019 10:18:41 -0400") Message-ID: <877e9r3j2i.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-VR-OUT-STATUS: OK X-VR-OUT-SCORE: 0 X-VR-OUT-SPAMCAUSE: gggruggvucftvghtrhhoucdtuddrgeduuddrudehhedgudegkecutefuodetggdotefrodftvfcurfhrohhfihhlvgemucggtfgfnhhsuhgsshgtrhhisggvpdfftffgtefojffquffvnecuuegrihhlohhuthemuceftddtnecunecujfgurhephffvufhofhffjgfkfgggtgesthdtredttdertdenucfhrhhomheplfhurhhiucfnihhnkhhovhcuoehjuhhriheslhhinhhkohhvrdhnvghtqeenucfkphepledurdduvdelrddutdelrddvtdelnecurfgrrhgrmhepmhhouggvpehsmhhtphdphhgvlhhopehmrghilhdrjhhurhhtrgdrohhrghdpihhnvghtpeeluddruddvledruddtledrvddtledprhgvthhurhhnqdhprghthheplfhurhhiucfnihhnkhhovhcuoehjuhhriheslhhinhhkohhvrdhnvghtqedpmhgrihhlfhhrohhmpehjuhhriheslhhinhhkohhvrdhnvghtpdhnrhgtphhtthhopehnphhoshhtrghvshesghhmrghilhdrtghomhenucevlhhushhtvghrufhiiigvpedt X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 35802 Cc: 35802@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) > Actually maybe it's just a matter of making isearch bind > search-spaces-regexp less widely. I'm not quite following when the your > problem happens though. Can you show a backtrace from your original > problem using > > (add-hook 'after-load-functions > (lambda (f) (when (string-match-p "uni-decomposition" f) > (debug nil :search-spaces-regexp search-spaces-regexp)))) When I eval both the above and (setq search-whitespace-regexp "\\(\\s-\\|\n\\)+") then debugger still shows that search-spaces-regexp is nil (also note where search-spaces-regexp is let-bound to non-nil in the backtrace, see also more info after the backtrace): Debugger entered: (:search-spaces-regexp nil) (progn (debug nil :search-spaces-regexp search-spaces-regexp)) (if (string-match-p "uni-decomposition" f) (progn (debug nil :search-spaces-regexp search-spaces-regexp))) (closure (t) (f) (if (string-match-p "uni-decomposition" f) (progn (debug nil :search-spaces-regexp search-spaces-regexp))))("emacs/lisp/international/uni-decomposition.el") run-hook-with-args((closure (t) (f) (if (string-match-p "uni-decomposition" f) (progn (debug nil :search-spaces-regexp search-spaces-regexp)))) "emacs/lisp/international/uni-decomposition.el") do-after-load-evaluation("emacs/lisp/international/uni-decomposition.el") load-with-code-conversion("emacs/lisp/international/uni-decomposition.el" "emacs/lisp/international/uni-decomposition.el" t t) unicode-property-table-internal(decomposition) char-fold-make-table() byte-code("\301 \20\301\207" [char-fold-table char-fold-make-table] 1) char-fold-to-regexp("a" (isearch-printing-char isearch-del-char)) funcall(char-fold-to-regexp "a" (isearch-printing-char isearch-del-char)) (if (functionp isearch-regexp-function) (funcall isearch-regexp-function string lax) (word-search-regexp string lax)) (let ((lax (and (not bound) (isearch--lax-regexp-function-p)))) (if lax (progn (setq isearch-adjusted t))) (if (functionp isearch-regexp-function) (funcall isearch-regexp-function string lax) (word-search-regexp string lax))) (cond (isearch-regexp-function (let ((lax (and (not bound) (isearch--lax-regexp-function-p)))) (if lax (progn (setq isearch-adjusted t))) (if (functionp isearch-regexp-function) (funcall isearch-regexp-function string lax) (word-search-regexp string lax)))) (isearch-regexp string) (t (regexp-quote string))) (funcall (if isearch-forward #'re-search-forward #'re-search-backward) (cond (isearch-regexp-function (let ((lax (and (not bound) (isearch--lax-regexp-function-p)))) (if lax (progn (setq isearch-adjusted t))) (if (functionp isearch-regexp-function) (funcall isearch-regexp-function string lax) (word-search-regexp string lax)))) (isearch-regexp string) (t (regexp-quote string))) bound noerror count) (let ((search-spaces-regexp (if (cond (isearch-regexp isearch-regexp-lax-whitespace) (t isearch-lax-whitespace)) (progn search-whitespace-regexp)))) (funcall (if isearch-forward #'re-search-forward #'re-search-backward) (cond (isearch-regexp-function (let ((lax (and (not bound) (isearch--lax-regexp-function-p)))) (if lax (progn (setq isearch-adjusted t))) (if (functionp isearch-regexp-function) (funcall isearch-regexp-function string lax) (word-search-regexp string lax)))) (isearch-regexp string) (t (regexp-quote string))) bound noerror count)) (closure (isearch-commands minibuffer-history-symbol t) (string &optional bound noerror count) (let ((search-spaces-regexp (if (cond (isearch-regexp isearch-regexp-lax-whitespace) (t isearch-lax-whitespace)) (progn search-whitespace-regexp)))) (funcall (if isearch-forward #'re-search-forward #'re-search-backward) (cond (isearch-regexp-function (let (...) (if lax ...) (if ... ... ...))) (isearch-regexp string) (t (regexp-quote string))) bound noerror count)))("a" nil t) funcall((closure (isearch-commands minibuffer-history-symbol t) (string &optional bound noerror count) (let ((search-spaces-regexp (if (cond (isearch-regexp isearch-regexp-lax-whitespace) (t isearch-lax-whitespace)) (progn search-whitespace-regexp)))) (funcall (if isearch-forward #'re-search-forward #'re-search-backward) (cond (isearch-regexp-function (let (...) (if lax ...) (if ... ... ...))) (isearch-regexp string) (t (regexp-quote string))) bound noerror count))) "a" nil t) (save-excursion (funcall func string bound noerror)) (let* ((func (isearch-search-fun)) (pos1 (save-excursion (funcall func string bound noerror))) pos2) (if (and (with-no-warnings (char-table-p translation-table-for-input)) (multibyte-string-p string) (string-match-p "[^[:ascii:]]" string)) (progn (let ((translated (apply 'string (mapcar ... string))) match-data) (if translated (progn (let (...) (unwind-protect ... ...)) (if (and pos2 ...) (progn ... ...))))))) (if pos1 (progn (if (and multi-isearch-next-buffer-current-function (buffer-live-p multi-isearch-current-buffer)) (switch-to-buffer multi-isearch-current-buffer)) (goto-char pos1) pos1))) isearch-search-string("a" nil t) isearch-search() isearch-search-and-update() isearch-process-search-string("a" "a") isearch-process-search-char(97 1) isearch-printing-char(97 1) funcall-interactively(isearch-printing-char 97 1) call-interactively(isearch-printing-char nil nil) command-execute(isearch-printing-char) But when I add (message "search-spaces-regexp: %S" search-spaces-regexp) at the top level in char-fold.el, then after its autoload from isearch, the *Message* buffer contains: search-spaces-regexp: "\\(\\s-\\| \\)+" From debbugs-submit-bounces@debbugs.gnu.org Sat Jun 15 22:12:53 2019 Received: (at 35802) by debbugs.gnu.org; 16 Jun 2019 02:12:53 +0000 Received: from localhost ([127.0.0.1]:39481 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hcKf7-0005kW-3R for submit@debbugs.gnu.org; Sat, 15 Jun 2019 22:12:53 -0400 Received: from mail-io1-f52.google.com ([209.85.166.52]:39500) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hcKf2-0005k8-K3 for 35802@debbugs.gnu.org; Sat, 15 Jun 2019 22:12:49 -0400 Received: by mail-io1-f52.google.com with SMTP id r185so8075276iod.6 for <35802@debbugs.gnu.org>; Sat, 15 Jun 2019 19:12:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=apEn8TtueTewsSzClyLLLknMMP/q+dXQot+yJyoZ+Uc=; b=id5tV7Jfm60whnTsMYJOZwrEYWedF85MRuOoQ9ib1l68Op2c6mmWEPDTvV1i/kaBCT IGrfGbM96t0Ymj73wlefHBkSokXuKkBLFL0ZRZp1ji0+ueFp0P3DYcMFFHKIprrULn/o B26T+HBqSsYK1eWfhGs8AvqLNBM/beOiITqJeuIIKjdAkgVNVK94HVM1JZeQW7LiyphH L7ARIPCAR+l90lu4oanUE7h0PY298gEbiGALYRbIPuz6jD0cwvMGRr0rx5S/puXSU25x w6rVwDeQ8TU4MBXXj/26p9V+oSzQ2XcpM3U6L3LbqfimVn52PzTQbiPAwPyZZQduZHBj NwdA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=apEn8TtueTewsSzClyLLLknMMP/q+dXQot+yJyoZ+Uc=; b=LB2CGlJ+oV3Rg38jnicQYlaoC8My8Q26wgsYCaIpMJunyNjCGgkd0pjixjkk+Q+jFC 9N8fMmoUd0FFA5ooJgFjaoNPwexcJD4sYxOghAInvp1i+7aC1joWwcrGBUe5UuYol3dn grGLKaKpl1c59PO2rbpF/8EbhkdL8DgJChh1aTumbzFA9FS2y3D2gspzzv5lPiaY1ziv IfPP2vfVhB16L2CYS6SMGTR7S63eZRhpFu62M0ipAzcDOg8ziXfADuffJVP3RjS9Hzwj OL0QR1f9Y+PH0/7AF8/35ZzhEFaK4CCbd7XxRp7eNNIyQschSlmkUzpzn7JyHeFbp+5O 7IQw== X-Gm-Message-State: APjAAAWUnMCxZIB/vKV9duBJ2RfLvZeiEbADo8nMhqEyzRBMObXMvKTz 48ISjK8gnGmmfpumpdb57U2zQXkx X-Google-Smtp-Source: APXvYqz2wW7KFw7FbultpcErpimaDRyuzsUVWMTEd7lvMnDa+7TUNw3skvloUpD2N9/+qJ1dPZlAsQ== X-Received: by 2002:a5d:9502:: with SMTP id d2mr10543187iom.2.1560651162795; Sat, 15 Jun 2019 19:12:42 -0700 (PDT) Received: from minid (cbl-45-2-119-34.yyz.frontiernetworks.ca. [45.2.119.34]) by smtp.gmail.com with ESMTPSA id i23sm5285254ioj.24.2019.06.15.19.12.41 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sat, 15 Jun 2019 19:12:41 -0700 (PDT) From: Noam Postavsky To: Juri Linkov Subject: Re: bug#35802: Broken data loaded from uni-decomposition References: <878sv2idc0.fsf@mail.linkov.net> <85k1dybq2y.fsf@gmail.com> <87v9xie9a8.fsf@mail.linkov.net> <854l4wb3y6.fsf@gmail.com> <877e9r3j2i.fsf@mail.linkov.net> Date: Sat, 15 Jun 2019 22:12:40 -0400 In-Reply-To: <877e9r3j2i.fsf@mail.linkov.net> (Juri Linkov's message of "Wed, 12 Jun 2019 00:11:33 +0300") Message-ID: <87k1dmxopz.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 35802 Cc: 35802@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Juri Linkov writes: >> Actually maybe it's just a matter of making isearch bind >> search-spaces-regexp less widely. I'm not quite following when the your >> problem happens though. Can you show a backtrace from your original >> problem using >> >> (add-hook 'after-load-functions >> (lambda (f) (when (string-match-p "uni-decomposition" f) >> (debug nil :search-spaces-regexp search-spaces-regexp)))) > > When I eval both the above and (setq search-whitespace-regexp "\\(\\s-\\|\n\\)+") > then debugger still shows that search-spaces-regexp is nil > (also note where search-spaces-regexp is let-bound to non-nil in the backtrace, > see also more info after the backtrace): Hmm, can you show exactly what's needed to trigger this? I tried the above after applying your patch in Bug#35802, but uni-decomposition was never loaded. From debbugs-submit-bounces@debbugs.gnu.org Sun Jun 16 16:36:59 2019 Received: (at 35802) by debbugs.gnu.org; 16 Jun 2019 20:36:59 +0000 Received: from localhost ([127.0.0.1]:41547 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hcbtb-0004NN-Cv for submit@debbugs.gnu.org; Sun, 16 Jun 2019 16:36:59 -0400 Received: from brown.elm.relay.mailchannels.net ([23.83.212.23]:46468) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hcbtZ-0004N6-H3 for 35802@debbugs.gnu.org; Sun, 16 Jun 2019 16:36:58 -0400 X-Sender-Id: dreamhost|x-authsender|jurta@jurta.org Received: from relay.mailchannels.net (localhost [127.0.0.1]) by relay.mailchannels.net (Postfix) with ESMTP id 32B883412C5; Sun, 16 Jun 2019 20:36:56 +0000 (UTC) Received: from pdx1-sub0-mail-a70.g.dreamhost.com (100-96-11-129.trex.outbound.svc.cluster.local [100.96.11.129]) (Authenticated sender: dreamhost) by relay.mailchannels.net (Postfix) with ESMTPA id 968C33401B9; Sun, 16 Jun 2019 20:36:55 +0000 (UTC) X-Sender-Id: dreamhost|x-authsender|jurta@jurta.org Received: from pdx1-sub0-mail-a70.g.dreamhost.com ([TEMPUNAVAIL]. [64.90.62.162]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384) by 0.0.0.0:2500 (trex/5.17.2); Sun, 16 Jun 2019 20:36:56 +0000 X-MC-Relay: Neutral X-MailChannels-SenderId: dreamhost|x-authsender|jurta@jurta.org X-MailChannels-Auth-Id: dreamhost X-Average-Drop: 0e86da293d668f4e_1560717415939_3341988841 X-MC-Loop-Signature: 1560717415939:1088873789 X-MC-Ingress-Time: 1560717415938 Received: from pdx1-sub0-mail-a70.g.dreamhost.com (localhost [127.0.0.1]) by pdx1-sub0-mail-a70.g.dreamhost.com (Postfix) with ESMTP id 43DD381066; Sun, 16 Jun 2019 13:36:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=linkov.net; h=from:to:cc :subject:references:date:in-reply-to:message-id:mime-version :content-type; s=linkov.net; bh=VYQVam/KAXA8ouHrSszMAFhsTm4=; b= aSC371CzD9+ycwOUCM7aGTC1/bCEGhueD1nUd9OiEg/WkkAcrzNUrVeLjNCUr2gZ aiSWb3RHxM4gVw/fmn+bMnJcgd6K9n+G7AxquRMKGNpuDxdTpNAa5a5j788idzPG VC5nSpKnZirVNjhburea2Iom8+Fvs6SY6BHd0cle11I= Received: from mail.jurta.org (m91-129-109-209.cust.tele2.ee [91.129.109.209]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: jurta@jurta.org) by pdx1-sub0-mail-a70.g.dreamhost.com (Postfix) with ESMTPSA id 6CC0381061; Sun, 16 Jun 2019 13:36:49 -0700 (PDT) X-DH-BACKEND: pdx1-sub0-mail-a70 From: Juri Linkov To: Noam Postavsky Subject: Re: bug#35802: Broken data loaded from uni-decomposition Organization: LINKOV.NET References: <878sv2idc0.fsf@mail.linkov.net> <85k1dybq2y.fsf@gmail.com> <87v9xie9a8.fsf@mail.linkov.net> <854l4wb3y6.fsf@gmail.com> <877e9r3j2i.fsf@mail.linkov.net> <87k1dmxopz.fsf@gmail.com> Date: Sun, 16 Jun 2019 22:22:15 +0300 In-Reply-To: <87k1dmxopz.fsf@gmail.com> (Noam Postavsky's message of "Sat, 15 Jun 2019 22:12:40 -0400") Message-ID: <877e9lcp3s.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-VR-OUT-STATUS: OK X-VR-OUT-SCORE: -100 X-VR-OUT-SPAMCAUSE: gggruggvucftvghtrhhoucdtuddrgeduuddrudeihedgudehhecutefuodetggdotefrodftvfcurfhrohhfihhlvgemucggtfgfnhhsuhgsshgtrhhisggvpdfftffgtefojffquffvnecuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenucfjughrpefhvffuohhfffgjkfgfgggtsehttdertddtredtnecuhfhrohhmpefluhhrihcunfhinhhkohhvuceojhhurhhisehlihhnkhhovhdrnhgvtheqnecukfhppeeluddruddvledruddtledrvddtleenucfrrghrrghmpehmohguvgepshhmthhppdhhvghlohepmhgrihhlrdhjuhhrthgrrdhorhhgpdhinhgvthepledurdduvdelrddutdelrddvtdelpdhrvghtuhhrnhdqphgrthhhpefluhhrihcunfhinhhkohhvuceojhhurhhisehlihhnkhhovhdrnhgvtheqpdhmrghilhhfrhhomhepjhhurhhisehlihhnkhhovhdrnhgvthdpnhhrtghpthhtohepnhhpohhsthgrvhhssehgmhgrihhlrdgtohhmnecuvehluhhsthgvrhfuihiivgepud X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 35802 Cc: 35802@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) >>> Actually maybe it's just a matter of making isearch bind >>> search-spaces-regexp less widely. I'm not quite following when the your >>> problem happens though. Can you show a backtrace from your original >>> problem using >>> >>> (add-hook 'after-load-functions >>> (lambda (f) (when (string-match-p "uni-decomposition" f) >>> (debug nil :search-spaces-regexp search-spaces-regexp)))) >> >> When I eval both the above and (setq search-whitespace-regexp "\\(\\s-\\|\n\\)+") >> then debugger still shows that search-spaces-regexp is nil >> (also note where search-spaces-regexp is let-bound to non-nil in the backtrace, >> see also more info after the backtrace): > > Hmm, can you show exactly what's needed to trigger this? I tried the > above after applying your patch in Bug#35802, but uni-decomposition was > never loaded. Here is a complete reproducible test case: -1. Apply the following patch to master and recompile 0. emacs -Q 1. Eval: (progn (setq search-whitespace-regexp "\\(\\s-\\|\n\\)+") (add-hook 'after-load-functions (lambda (f) (when (string-match-p "uni-decomposition" f) (debug nil :search-spaces-regexp search-spaces-regexp))))) 2. Type C-s M-s ' a diff --git a/lisp/char-fold.el b/lisp/char-fold.el index d2fa7108bb..7b0e55bb11 100644 --- a/lisp/char-fold.el +++ b/lisp/char-fold.el @@ -28,7 +28,6 @@ (defun char-fold-make-table () (let* ((equiv (make-char-table 'char-fold-table)) (equiv-multi (make-char-table 'char-fold-table)) - (search-spaces-regexp nil) ; workaround for bug#35802 (table (unicode-property-table-internal 'decomposition))) (set-char-table-extra-slot equiv 0 equiv-multi) @@ -141,6 +140,11 @@ char-fold-table Exceptionally for the space character (32), ALIST is ignored.") +(progn + (message "search-spaces-regexp: %S" search-spaces-regexp) + ;; Emulate funcall from defcustom :set + (setq char-fold-table (char-fold-make-table))) + (defun char-fold--make-space-string (n) "Return a string that matches N spaces." (format "\\(?:%s\\|%s\\)" From debbugs-submit-bounces@debbugs.gnu.org Fri Jun 21 07:16:51 2019 Received: (at 35802) by debbugs.gnu.org; 21 Jun 2019 11:16:51 +0000 Received: from localhost ([127.0.0.1]:49803 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1heHXH-00032l-Ha for submit@debbugs.gnu.org; Fri, 21 Jun 2019 07:16:51 -0400 Received: from mail-io1-f42.google.com ([209.85.166.42]:44766) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1heHXF-00032X-HS for 35802@debbugs.gnu.org; Fri, 21 Jun 2019 07:16:49 -0400 Received: by mail-io1-f42.google.com with SMTP id s7so2162187iob.11 for <35802@debbugs.gnu.org>; Fri, 21 Jun 2019 04:16:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=fmXZcLPEQLSqb2fHi38qRTJS7rOB/zpLrfFgzpONris=; b=T2uHkEpeKBaezLPac1hbgaWU+lgjXhOB9430pdioENx7My1dLxYGCMub3PIILlxQK1 5F/Dp2eea6/SWdGMc0oWbAtOUiVS4a1RRCciZqIWctKSwF7uHpnuclAE3vSh0dwEHKXG 2N8qxR5kwsRIMmy+nmats8rMeTU1rxeiOcIjcS6BAbO53MtbFGBHdkNm540QhBgO+VsR SfKw6npN8c1FpzuNbvbAF1gDRrCFpmUHKAtbFQ+WbrA4S3NY/fqVcXy05MA/N65gp8ys F/8QFlDAfLKz/azdp2R+QLoNP7R7z09SdNFaFdm4ww+Cycd4pzkgp7Q0ffVRvCcNFZM3 viMQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=fmXZcLPEQLSqb2fHi38qRTJS7rOB/zpLrfFgzpONris=; b=eGxX27lMkqA+6TMEurRRyJn/gvzc1N1C/klFBE555Q2qvQWEcrfYlCkIeriQihXAr/ A+uEk24zSzZHlLBQVskysiIsWXqo0FgnJFfNYewnw3f0JVHHbmE8bieAHpLhKoHBAyGF Bc4GiViDx9sEcS3nyfP4j6RaisNxeFtQo5ZoySpqSFO7YnW4lTUZaiqJA3O7kqyDB6+F dd//Qd/3oEj2EPN+z1xrJgVUBlW0Qi6l9JJq3ZSqp5CE21p/L8dBxUyL3Dn8dzLILFgo oL+treTBJVG4rMaSEMbb3We/plWrEq63jFPthCpRMcz+HOkfaiUbnYt04YKscWXSqtmQ KxMw== X-Gm-Message-State: APjAAAV8wOKkj84B1u8ZV2jRwRDZPFPsnuo5Q3xDSfu9gBZdWAghk0FE mbjCj4FR6RYSIC1kFhPScoQgPLti X-Google-Smtp-Source: APXvYqyLPdo/n1r4ibZFhvz4oG+GHbdcLwlPKvpE3ZHw3s5fai3P5+EuzC2cM5Rn7QzmE0ZnSmG2MQ== X-Received: by 2002:a6b:6107:: with SMTP id v7mr5079956iob.154.1561115803838; Fri, 21 Jun 2019 04:16:43 -0700 (PDT) Received: from minid (cbl-45-2-119-34.yyz.frontiernetworks.ca. [45.2.119.34]) by smtp.gmail.com with ESMTPSA id x13sm2396910ioj.18.2019.06.21.04.16.42 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 21 Jun 2019 04:16:43 -0700 (PDT) From: Noam Postavsky To: Juri Linkov Subject: Re: bug#35802: Broken data loaded from uni-decomposition References: <878sv2idc0.fsf@mail.linkov.net> <85k1dybq2y.fsf@gmail.com> <87v9xie9a8.fsf@mail.linkov.net> <854l4wb3y6.fsf@gmail.com> <877e9r3j2i.fsf@mail.linkov.net> <87k1dmxopz.fsf@gmail.com> <877e9lcp3s.fsf@mail.linkov.net> Date: Fri, 21 Jun 2019 07:16:41 -0400 In-Reply-To: <877e9lcp3s.fsf@mail.linkov.net> (Juri Linkov's message of "Sun, 16 Jun 2019 22:22:15 +0300") Message-ID: <87muibur1i.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 35802 Cc: 35802@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --=-=-= Content-Type: text/plain > --- a/lisp/char-fold.el > +++ b/lisp/char-fold.el > @@ -28,7 +28,6 @@ > (defun char-fold-make-table () > (let* ((equiv (make-char-table 'char-fold-table)) > (equiv-multi (make-char-table 'char-fold-table)) > - (search-spaces-regexp nil) ; workaround for bug#35802 Ah, I guess this part explains why search-spaces-regexp turned up nil in the debugger backtrace. So I think adjusting isearch-search-fun-default should be enough to fix this. --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=0001-Don-t-bind-search-spaces-regexp-around-possible-auto.patch Content-Description: patch >From 4f643ac01ff133e4ad088606c7faf03d2c6287b6 Mon Sep 17 00:00:00 2001 From: Noam Postavsky Date: Fri, 21 Jun 2019 07:09:44 -0400 Subject: [PATCH] Don't bind search-spaces-regexp around possible autoload (Bug#35802) * lisp/isearch.el (isearch-search-fun-default): Move possible autoload trigger outside let-binding of search-spaces-regexp. * lisp/char-fold.el (char-fold-make-table): Remove no longer needed workaround. --- lisp/char-fold.el | 1 - lisp/isearch.el | 38 ++++++++++++++++++++++---------------- 2 files changed, 22 insertions(+), 17 deletions(-) diff --git a/lisp/char-fold.el b/lisp/char-fold.el index 7a79873873..7b0e55bb11 100644 --- a/lisp/char-fold.el +++ b/lisp/char-fold.el @@ -28,7 +28,6 @@ (eval-and-compile (defun char-fold-make-table () (let* ((equiv (make-char-table 'char-fold-table)) (equiv-multi (make-char-table 'char-fold-table)) - (search-spaces-regexp nil) ; workaround for bug#35802 (table (unicode-property-table-internal 'decomposition))) (set-char-table-extra-slot equiv 0 equiv-multi) diff --git a/lisp/isearch.el b/lisp/isearch.el index bb29c2914b..bfd2e776ec 100644 --- a/lisp/isearch.el +++ b/lisp/isearch.el @@ -3263,25 +3263,31 @@ (defun isearch--lax-regexp-function-p () (defun isearch-search-fun-default () "Return default functions to use for the search." (lambda (string &optional bound noerror count) - ;; Use lax versions to not fail at the end of the word while - ;; the user adds and removes characters in the search string - ;; (or when using nonincremental word isearch) - (let ((search-spaces-regexp (when (cond - (isearch-regexp isearch-regexp-lax-whitespace) - (t isearch-lax-whitespace)) + (let (;; Evaluate this before binding `search-spaces-regexp' which + ;; can break all sorts of regexp searches. In particular, + ;; calling `isearch-regexp-function' can trigger autoloading + ;; (Bug#35802). + (regexp + (cond (isearch-regexp-function + (let ((lax (and (not bound) + (isearch--lax-regexp-function-p)))) + (when lax + (setq isearch-adjusted t)) + (if (functionp isearch-regexp-function) + (funcall isearch-regexp-function string lax) + (word-search-regexp string lax)))) + (isearch-regexp string) + (t (regexp-quote string)))) + ;; Use lax versions to not fail at the end of the word while + ;; the user adds and removes characters in the search string + ;; (or when using nonincremental word isearch) + (search-spaces-regexp (when (if isearch-regexp + isearch-regexp-lax-whitespace + isearch-lax-whitespace) search-whitespace-regexp))) (funcall (if isearch-forward #'re-search-forward #'re-search-backward) - (cond (isearch-regexp-function - (let ((lax (and (not bound) (isearch--lax-regexp-function-p)))) - (when lax - (setq isearch-adjusted t)) - (if (functionp isearch-regexp-function) - (funcall isearch-regexp-function string lax) - (word-search-regexp string lax)))) - (isearch-regexp string) - (t (regexp-quote string))) - bound noerror count)))) + regexp bound noerror count)))) (defun isearch-search-string (string bound noerror) "Search for the first occurrence of STRING or its translation. -- 2.11.0 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Fri Jun 21 15:16:55 2019 Received: (at 35802) by debbugs.gnu.org; 21 Jun 2019 19:16:55 +0000 Received: from localhost ([127.0.0.1]:50727 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1heP1r-0007Vo-0Y for submit@debbugs.gnu.org; Fri, 21 Jun 2019 15:16:55 -0400 Received: from chocolate.birch.relay.mailchannels.net ([23.83.209.35]:4529) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1heP1o-0007Va-4N for 35802@debbugs.gnu.org; Fri, 21 Jun 2019 15:16:53 -0400 X-Sender-Id: dreamhost|x-authsender|jurta@jurta.org Received: from relay.mailchannels.net (localhost [127.0.0.1]) by relay.mailchannels.net (Postfix) with ESMTP id 9CAFF5E2ABD; Fri, 21 Jun 2019 19:16:50 +0000 (UTC) Received: from pdx1-sub0-mail-a24.g.dreamhost.com (100-96-88-48.trex.outbound.svc.cluster.local [100.96.88.48]) (Authenticated sender: dreamhost) by relay.mailchannels.net (Postfix) with ESMTPA id 20AB95E26A0; Fri, 21 Jun 2019 19:16:50 +0000 (UTC) X-Sender-Id: dreamhost|x-authsender|jurta@jurta.org Received: from pdx1-sub0-mail-a24.g.dreamhost.com ([TEMPUNAVAIL]. [64.90.62.162]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384) by 0.0.0.0:2500 (trex/5.17.2); Fri, 21 Jun 2019 19:16:50 +0000 X-MC-Relay: Neutral X-MailChannels-SenderId: dreamhost|x-authsender|jurta@jurta.org X-MailChannels-Auth-Id: dreamhost X-Spot-Unite: 78f6164d7066a60d_1561144610450_3711948372 X-MC-Loop-Signature: 1561144610450:4280013819 X-MC-Ingress-Time: 1561144610450 Received: from pdx1-sub0-mail-a24.g.dreamhost.com (localhost [127.0.0.1]) by pdx1-sub0-mail-a24.g.dreamhost.com (Postfix) with ESMTP id DDCBC83871; Fri, 21 Jun 2019 12:16:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=linkov.net; h=from:to:cc :subject:references:date:in-reply-to:message-id:mime-version :content-type; s=linkov.net; bh=kttiPPA8MZfK8aUYQsEnm5qzKnA=; b= 2I9htlbqbTVcUxxxWp1yjgiiXQh/oCdMfJ5Q4J98JDQsBlK4m7oedsZDQv9jJGsl 8pz1AI5joY1PHH6MFiHK+EgxWutWT/zPHQ22qLHSQIwc/UwwREisFkwNcnkLxs1q 0M/RKcDXKVQtof7EnFDvuSmAOF45c+TdXJuibPmkiDQ= Received: from mail.jurta.org (m91-129-109-209.cust.tele2.ee [91.129.109.209]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: jurta@jurta.org) by pdx1-sub0-mail-a24.g.dreamhost.com (Postfix) with ESMTPSA id 586888386F; Fri, 21 Jun 2019 12:16:42 -0700 (PDT) X-DH-BACKEND: pdx1-sub0-mail-a24 From: Juri Linkov To: Noam Postavsky Subject: Re: bug#35802: Broken data loaded from uni-decomposition Organization: LINKOV.NET References: <878sv2idc0.fsf@mail.linkov.net> <85k1dybq2y.fsf@gmail.com> <87v9xie9a8.fsf@mail.linkov.net> <854l4wb3y6.fsf@gmail.com> <877e9r3j2i.fsf@mail.linkov.net> <87k1dmxopz.fsf@gmail.com> <877e9lcp3s.fsf@mail.linkov.net> <87muibur1i.fsf@gmail.com> Date: Fri, 21 Jun 2019 22:16:24 +0300 In-Reply-To: <87muibur1i.fsf@gmail.com> (Noam Postavsky's message of "Fri, 21 Jun 2019 07:16:41 -0400") Message-ID: <877e9e3jqv.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-VR-OUT-STATUS: OK X-VR-OUT-SCORE: -100 X-VR-OUT-SPAMCAUSE: gggruggvucftvghtrhhoucdtuddrgeduvddrtdeigddufeelucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuggftfghnshhusghstghrihgsvgdpffftgfetoffjqffuvfenuceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmnecujfgurhephffvufhofhffjgfkfgggtgesthdtredttdertdenucfhrhhomheplfhurhhiucfnihhnkhhovhcuoehjuhhriheslhhinhhkohhvrdhnvghtqeenucfkphepledurdduvdelrddutdelrddvtdelnecurfgrrhgrmhepmhhouggvpehsmhhtphdphhgvlhhopehmrghilhdrjhhurhhtrgdrohhrghdpihhnvghtpeeluddruddvledruddtledrvddtledprhgvthhurhhnqdhprghthheplfhurhhiucfnihhnkhhovhcuoehjuhhriheslhhinhhkohhvrdhnvghtqedpmhgrihhlfhhrohhmpehjuhhriheslhhinhhkohhvrdhnvghtpdhnrhgtphhtthhopehnphhoshhtrghvshesghhmrghilhdrtghomhenucevlhhushhtvghrufhiiigvpedt X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 35802 Cc: 35802@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) > So I think adjusting isearch-search-fun-default should be enough > to fix this. Yes, hopefully the value of search-spaces-regexp is not needed at the time of regexp generation, even though it's mentioned in the comments of char-fold-to-regexp. Are more changes required to avoid such problem in other error-prone places and to make char-fold--test-bug-35802 still to pass, like using "Local[ ]Variables:" in find-auto-coding? Also maybe a warning about the need of using non-capturing groups should be added to documentation of search-spaces-regexp, search-whitespace-regexp, Info-search-whitespace-regexp? From debbugs-submit-bounces@debbugs.gnu.org Sat Jun 22 18:36:10 2019 Received: (at 35802) by debbugs.gnu.org; 22 Jun 2019 22:36:10 +0000 Received: from localhost ([127.0.0.1]:52655 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1heocD-0007GJ-Mb for submit@debbugs.gnu.org; Sat, 22 Jun 2019 18:36:10 -0400 Received: from mail-io1-f45.google.com ([209.85.166.45]:34243) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1heocB-0007Fq-6O; Sat, 22 Jun 2019 18:36:07 -0400 Received: by mail-io1-f45.google.com with SMTP id k8so106269iot.1; Sat, 22 Jun 2019 15:36:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=RpW6mdg4V9dIAwWtnyVEy0lIgInOzjyZo0nZ9RsGJXg=; b=PYtBH01XuwzHHEMCucAYWvt1VT3UdfgMqPTEFTmSgmFUyJVSO1UP9+PGRS/QqzxJ9K dNdnuopa/TCSr5cVlFSrr8fLlA4yLOOlwdOzXBXUfGT8VqbxmQo9uMnrQdsCKOZi/f5+ FC/dwbs93nUUaMmDtoK/tx2utXrRCO2obSP0r7E3QevkLlV8NqSFkniKxbfh8Zp6JyMb NbIH0u0WhlcaR31jrEse1KTc/YmYKL9/NTWCqUMNI6FgB1sVtzkccHZipPr6Un8y58jr u2AtRdMxlLQMtiqKyFN6S6mH1hxH0clZnTFjNLgkaLiOzk0mNndtf15Al96julphDoT/ +DbQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=RpW6mdg4V9dIAwWtnyVEy0lIgInOzjyZo0nZ9RsGJXg=; b=T9eDZGigJOJlETh9ViImzaFvHl2FJI4ONcMcASWWEALSA5afVcpsO68xeaYq8F7NH5 iggWylcmAmbjsaZ4dG29uFhVuXJjQDh7S1bCqA5Z0RXY1+lRtr8kWAgUqWZ4MAlBWwIC T+r5XT5p8+eCy6uMTPs23rMFRo4A+yqlrTqwjENa+xtutoSMMz6ki67a0Alp78xVx01v xwZ8RoN+UverUXFflBWz3NKpH6/3tokjKdm0sbklWaVPMhY31W2PSB29wz0fyQtcKlTI TsS3LBahpoZV4yNUDpzBoE65BMcE0oGl4BfdKnhpF6BkakVkAXPW98ON7qDeqRkBxVRt RjBg== X-Gm-Message-State: APjAAAXJYEgrrlM+0Hts8H43NP/dWcMtJykWZVoMapMRrD9fCVVT47Hg urPRApO0laT9HxFggTiA4qL3JYvJ X-Google-Smtp-Source: APXvYqxXrXxYWzAVtZ3hHiexom0qeWAnpvVLUyLAJBD4fXVubnoXuVfn1dXV0PzL61fGEhp93SaFpg== X-Received: by 2002:a5d:9bc6:: with SMTP id d6mr18188012ion.160.1561242961410; Sat, 22 Jun 2019 15:36:01 -0700 (PDT) Received: from minid (cbl-45-2-119-34.yyz.frontiernetworks.ca. [45.2.119.34]) by smtp.gmail.com with ESMTPSA id d7sm5848855iob.67.2019.06.22.15.35.59 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sat, 22 Jun 2019 15:36:00 -0700 (PDT) From: Noam Postavsky To: Juri Linkov Subject: Re: bug#35802: Broken data loaded from uni-decomposition References: <878sv2idc0.fsf@mail.linkov.net> <85k1dybq2y.fsf@gmail.com> <87v9xie9a8.fsf@mail.linkov.net> <854l4wb3y6.fsf@gmail.com> <877e9r3j2i.fsf@mail.linkov.net> <87k1dmxopz.fsf@gmail.com> <877e9lcp3s.fsf@mail.linkov.net> <87muibur1i.fsf@gmail.com> <877e9e3jqv.fsf@mail.linkov.net> Date: Sat, 22 Jun 2019 18:35:59 -0400 In-Reply-To: <877e9e3jqv.fsf@mail.linkov.net> (Juri Linkov's message of "Fri, 21 Jun 2019 22:16:24 +0300") Message-ID: <871rzluu28.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 35802 Cc: 35802@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) --=-=-= Content-Type: text/plain tags 35802 + patch quit Juri Linkov writes: >> So I think adjusting isearch-search-fun-default should be enough >> to fix this. > > Yes, hopefully the value of search-spaces-regexp is not needed at the > time of regexp generation, even though it's mentioned in the comments > of char-fold-to-regexp. Right, it only affects searching. > Are more changes required to avoid such problem in other error-prone > places and to make char-fold--test-bug-35802 still to pass, like using > "Local[ ]Variables:" in find-auto-coding? I don't think it's reasonable to start protecting all regexps which might have whitespace in them. > Also maybe a warning about the need of using non-capturing groups should be > added to documentation of search-spaces-regexp, search-whitespace-regexp, > Info-search-whitespace-regexp? Right, I forgot about that. --=-=-= Content-Type: text/plain; charset=utf-8 Content-Disposition: attachment; filename=0001-Don-t-bind-search-spaces-regexp-around-possible-auto.patch Content-Transfer-Encoding: quoted-printable Content-Description: patch >From 9bc358511c1240f1c49c12cd84e34210d7cbc16b Mon Sep 17 00:00:00 2001 From: Noam Postavsky Date: Fri, 21 Jun 2019 07:09:44 -0400 Subject: [PATCH] Don't bind search-spaces-regexp around possible autoload (Bug#35802) * lisp/isearch.el (isearch-search-fun-default): Move possible autoload trigger outside let-binding of search-spaces-regexp. * lisp/char-fold.el (char-fold-make-table): Remove no longer needed workaround. * lisp/info.el (Info-search-whitespace-regexp): * lisp/isearch.el (search-whitespace-regexp): * src/search.c (syms_of_search) : Add warning about adding capturing groups to the value. * test/lisp/char-fold-tests.el: Remove, binding search-spaces-regexp to a different should be considered a bug. --- lisp/char-fold.el | 1 - lisp/info.el | 4 +++- lisp/isearch.el | 44 ++++++++++++++++++++++++++--------------= ---- src/search.c | 4 +++- test/lisp/char-fold-tests.el | 8 -------- 5 files changed, 32 insertions(+), 29 deletions(-) diff --git a/lisp/char-fold.el b/lisp/char-fold.el index 7a79873873..7b0e55bb11 100644 --- a/lisp/char-fold.el +++ b/lisp/char-fold.el @@ -28,7 +28,6 @@ (eval-and-compile (defun char-fold-make-table () (let* ((equiv (make-char-table 'char-fold-table)) (equiv-multi (make-char-table 'char-fold-table)) - (search-spaces-regexp nil) ; workaround for bug#35802 (table (unicode-property-table-internal 'decomposition))) (set-char-table-extra-slot equiv 0 equiv-multi) =20 diff --git a/lisp/info.el b/lisp/info.el index c211887a39..3203c5f171 100644 --- a/lisp/info.el +++ b/lisp/info.el @@ -343,7 +343,9 @@ (defcustom Info-search-whitespace-regexp "\\s-+" This applies to Info search for regular expressions. You might want to use something like \"[ \\t\\r\\n]+\" instead. In the Customization buffer, that is `[' followed by a space, -a tab, a carriage return (control-M), a newline, and `]+'." +a tab, a carriage return (control-M), a newline, and `]+'. Don't +add any capturing groups into this value; that can change the +numbering of existing capture groups in unexpected ways." :type 'regexp :group 'info) =20 diff --git a/lisp/isearch.el b/lisp/isearch.el index bb29c2914b..f150a3bba4 100644 --- a/lisp/isearch.el +++ b/lisp/isearch.el @@ -129,8 +129,10 @@ (defcustom search-whitespace-regexp (purecopy "\\s-+") then each space you type matches literally, against one space. =20 You might want to use something like \"[ \\t\\r\\n]+\" instead. -In the Customization buffer, that is `[' followed by a space, -a tab, a carriage return (control-M), a newline, and `]+'." +In the Customization buffer, that is `[' followed by a space, a +tab, a carriage return (control-M), a newline, and `]+'. Don't +add any capturing groups into this value; that can change the +numbering of existing capture groups in unexpected ways." :type '(choice (const :tag "Match Spaces Literally" nil) regexp) :version "24.3") @@ -3263,25 +3265,31 @@ (defun isearch--lax-regexp-function-p () (defun isearch-search-fun-default () "Return default functions to use for the search." (lambda (string &optional bound noerror count) - ;; Use lax versions to not fail at the end of the word while - ;; the user adds and removes characters in the search string - ;; (or when using nonincremental word isearch) - (let ((search-spaces-regexp (when (cond - (isearch-regexp isearch-regexp-lax-= whitespace) - (t isearch-lax-whitespace)) + (let (;; Evaluate this before binding `search-spaces-regexp' which + ;; can break all sorts of regexp searches. In particular, + ;; calling `isearch-regexp-function' can trigger autoloading + ;; (Bug#35802). + (regexp + (cond (isearch-regexp-function + (let ((lax (and (not bound) + (isearch--lax-regexp-function-p)))) + (when lax + (setq isearch-adjusted t)) + (if (functionp isearch-regexp-function) + (funcall isearch-regexp-function string lax) + (word-search-regexp string lax)))) + (isearch-regexp string) + (t (regexp-quote string)))) + ;; Use lax versions to not fail at the end of the word while + ;; the user adds and removes characters in the search string + ;; (or when using nonincremental word isearch) + (search-spaces-regexp (when (if isearch-regexp + isearch-regexp-lax-whitespace + isearch-lax-whitespace) search-whitespace-regexp))) (funcall (if isearch-forward #'re-search-forward #'re-search-backward) - (cond (isearch-regexp-function - (let ((lax (and (not bound) (isearch--lax-regexp-function-p)= ))) - (when lax - (setq isearch-adjusted t)) - (if (functionp isearch-regexp-function) - (funcall isearch-regexp-function string lax) - (word-search-regexp string lax)))) - (isearch-regexp string) - (t (regexp-quote string))) - bound noerror count)))) + regexp bound noerror count)))) =20 (defun isearch-search-string (string bound noerror) "Search for the first occurrence of STRING or its translation. diff --git a/src/search.c b/src/search.c index 8a0f707b72..fa574959fb 100644 --- a/src/search.c +++ b/src/search.c @@ -3390,7 +3390,9 @@ syms_of_search (void) Some commands use this for user-specified regexps. Spaces that occur inside character classes or repetition operators or other such regexp constructs are not replaced with this. -A value of nil (which is the normal value) means treat spaces literally. = */); +A value of nil (which is the normal value) means treat spaces +literally. Note that a value with capturing groups can change the +numbering of existing capture groups in unexpected ways. */); Vsearch_spaces_regexp =3D Qnil; =20 DEFSYM (Qinhibit_changing_match_data, "inhibit-changing-match-data"); diff --git a/test/lisp/char-fold-tests.el b/test/lisp/char-fold-tests.el index 8a7414084b..3fde312a13 100644 --- a/test/lisp/char-fold-tests.el +++ b/test/lisp/char-fold-tests.el @@ -124,13 +124,5 @@ (ert-deftest char-fold--speed-test () ;; Ensure it took less than a second. (should (< (- (time-to-seconds) time) 1)))))) =20 -(ert-deftest char-fold--test-bug-35802 () - (let* ((char-code-property-alist ; initial value - (cons '(decomposition . "uni-decomposition.el") - char-code-property-alist)) - (search-spaces-regexp "\\(\\s-\\|\n\\)+") - (char-fold-table (char-fold-make-table))) - (char-fold--test-match-exactly "a=CC=88" "=C3=A4"))) - (provide 'char-fold-tests) ;;; char-fold-tests.el ends here --=20 2.11.0 --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Sun Jun 23 17:41:39 2019 Received: (at 35802) by debbugs.gnu.org; 23 Jun 2019 21:41:39 +0000 Received: from localhost ([127.0.0.1]:55091 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hfAF1-000101-7B for submit@debbugs.gnu.org; Sun, 23 Jun 2019 17:41:39 -0400 Received: from dog.birch.relay.mailchannels.net ([23.83.209.48]:51548) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hfAEz-0000zs-8g for 35802@debbugs.gnu.org; Sun, 23 Jun 2019 17:41:38 -0400 X-Sender-Id: dreamhost|x-authsender|jurta@jurta.org Received: from relay.mailchannels.net (localhost [127.0.0.1]) by relay.mailchannels.net (Postfix) with ESMTP id CBC5F6A0D1E; Sun, 23 Jun 2019 21:41:35 +0000 (UTC) Received: from pdx1-sub0-mail-a96.g.dreamhost.com (100-96-88-48.trex.outbound.svc.cluster.local [100.96.88.48]) (Authenticated sender: dreamhost) by relay.mailchannels.net (Postfix) with ESMTPA id 278E56A19A0; Sun, 23 Jun 2019 21:41:35 +0000 (UTC) X-Sender-Id: dreamhost|x-authsender|jurta@jurta.org Received: from pdx1-sub0-mail-a96.g.dreamhost.com ([TEMPUNAVAIL]. [64.90.62.162]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384) by 0.0.0.0:2500 (trex/5.17.2); Sun, 23 Jun 2019 21:41:35 +0000 X-MC-Relay: Neutral X-MailChannels-SenderId: dreamhost|x-authsender|jurta@jurta.org X-MailChannels-Auth-Id: dreamhost X-Drop-Fumbling: 509321156806457c_1561326095551_799094815 X-MC-Loop-Signature: 1561326095551:3980449086 X-MC-Ingress-Time: 1561326095551 Received: from pdx1-sub0-mail-a96.g.dreamhost.com (localhost [127.0.0.1]) by pdx1-sub0-mail-a96.g.dreamhost.com (Postfix) with ESMTP id D8E9A80C87; Sun, 23 Jun 2019 14:41:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=linkov.net; h=from:to:cc :subject:references:date:in-reply-to:message-id:mime-version :content-type; s=linkov.net; bh=9aLKXBItvadiioQbAdlwR0Bqz8w=; b= Sj2xbZDyLUonHtllVW83oX+ihNCaHNsp9S0pp23UDD0O071+F1mI33ltZpmyjzna N3mdfvZ7tLUixDC1ZPNE1NTjEW5aQZwWYThtJlXa0CDHvr35x+7lj2rS6U6wweZq ZzEUPc9S7xZfDgJS7d8YO5vzx8je0Z1YvDue+TbEaSE= Received: from mail.jurta.org (m91-129-109-209.cust.tele2.ee [91.129.109.209]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: jurta@jurta.org) by pdx1-sub0-mail-a96.g.dreamhost.com (Postfix) with ESMTPSA id CE72680C8C; Sun, 23 Jun 2019 14:41:24 -0700 (PDT) X-DH-BACKEND: pdx1-sub0-mail-a96 From: Juri Linkov To: Noam Postavsky Subject: Re: bug#35802: Broken data loaded from uni-decomposition Organization: LINKOV.NET References: <878sv2idc0.fsf@mail.linkov.net> <85k1dybq2y.fsf@gmail.com> <87v9xie9a8.fsf@mail.linkov.net> <854l4wb3y6.fsf@gmail.com> <877e9r3j2i.fsf@mail.linkov.net> <87k1dmxopz.fsf@gmail.com> <877e9lcp3s.fsf@mail.linkov.net> <87muibur1i.fsf@gmail.com> <877e9e3jqv.fsf@mail.linkov.net> <871rzluu28.fsf@gmail.com> Date: Mon, 24 Jun 2019 00:25:02 +0300 In-Reply-To: <871rzluu28.fsf@gmail.com> (Noam Postavsky's message of "Sat, 22 Jun 2019 18:35:59 -0400") Message-ID: <87a7e82dw1.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-VR-OUT-STATUS: OK X-VR-OUT-SCORE: -100 X-VR-OUT-SPAMCAUSE: gggruggvucftvghtrhhoucdtuddrgeduvddruddugddtudcutefuodetggdotefrodftvfcurfhrohhfihhlvgemucggtfgfnhhsuhgsshgtrhhisggvpdfftffgtefojffquffvnecuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenucfjughrpefhvffuohhfffgjkfgfgggtsehttdertddtredtnecuhfhrohhmpefluhhrihcunfhinhhkohhvuceojhhurhhisehlihhnkhhovhdrnhgvtheqnecukfhppeeluddruddvledruddtledrvddtleenucfrrghrrghmpehmohguvgepshhmthhppdhhvghlohepmhgrihhlrdhjuhhrthgrrdhorhhgpdhinhgvthepledurdduvdelrddutdelrddvtdelpdhrvghtuhhrnhdqphgrthhhpefluhhrihcunfhinhhkohhvuceojhhurhhisehlihhnkhhovhdrnhgvtheqpdhmrghilhhfrhhomhepjhhurhhisehlihhnkhhovhdrnhgvthdpnhhrtghpthhtohepnhhpohhsthgrvhhssehgmhgrihhlrdgtohhmnecuvehluhhsthgvrhfuihiivgeptd X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 35802 Cc: 35802@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) >> Yes, hopefully the value of search-spaces-regexp is not needed at the >> time of regexp generation, even though it's mentioned in the comments >> of char-fold-to-regexp. > > Right, it only affects searching. > >> Also maybe a warning about the need of using non-capturing groups should be >> added to documentation of search-spaces-regexp, search-whitespace-regexp, >> Info-search-whitespace-regexp? > > Right, I forgot about that. Thanks, after your fix I could continue to finish bug#35689. From debbugs-submit-bounces@debbugs.gnu.org Tue Jun 25 22:08:39 2019 Received: (at 35802) by debbugs.gnu.org; 26 Jun 2019 02:08:39 +0000 Received: from localhost ([127.0.0.1]:33974 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hfxMU-0007jj-P6 for submit@debbugs.gnu.org; Tue, 25 Jun 2019 22:08:39 -0400 Received: from mail-io1-f53.google.com ([209.85.166.53]:45777) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hfxMS-0007jR-QX; Tue, 25 Jun 2019 22:08:37 -0400 Received: by mail-io1-f53.google.com with SMTP id e3so1471755ioc.12; Tue, 25 Jun 2019 19:08:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=GWyQhASX3Yyyh31cIawCXq0P4XMcLUrpLGdMR/47Zq0=; b=kw6cKBpk+QgHZBlUKHzXbxJRRkuWOiutLjXyxRax2xgQiCmHmIbfeB/a0tGqGm9ty8 33X6dwgSdBdKc+KNZFQATZLIZZAme+MWQIjem82xdqvQz3v56hJ27paMzduMb4yaOMZ4 DSdVD5JWoPyQskhUM+W+P/Ub15W1K3F9Y50fniIlSwCFW0dX4mDxdDGKCH/xO3N0x0WQ hcECNOxWioHFm9Io2P6K9VrD9N9etc8j3fhrQKD8GObkceeqDsF2uaK1aMC7wwTpiPQ1 bSQAACJOQTakf0F3cL9L/qZqgvYLcYUeKPkMg3k27R5WtuN1UCOA5YuFhsSguK5JemV9 atKw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=GWyQhASX3Yyyh31cIawCXq0P4XMcLUrpLGdMR/47Zq0=; b=XfipTsgeSBSeplf6cymZzx9EhioHnl2fV/MzYJd/46roiNKAuTL3B/sQCJGIqN+jz4 F+JN6pWBa2Cj1JsPOyLEym4YCO6pr/JoSk6FN32U4Hoe3dNRBEB+q2MxXyxBW5oU33pW C+BqjPEoi48nZLOnOAROMn3llVfN2g5kOcSbnjnkeVIog2x5V/TgD8R5SteFfgr2KmkF ijmLdAe5pchq41MjDaz3ixUnDj1vXiJLKTgOUYFD2WBwdrsr87KKftMCUvlwwLzG32+Z JXrgr+R9eS9ifeydGDprjnACmQ/nnC1/fJCPdAhBmHQFQYM+bjmSLPUjn3HhAb+AsG0j bU2w== X-Gm-Message-State: APjAAAUrNLMstkufcfRZ97NbFrq1LrbRnN8CbSDPMwwFvsLcLqBmv0hT CnEjP4OiwsOpSeNf6VhtGeOMLPZ5 X-Google-Smtp-Source: APXvYqwgxfKyXI9oZWFpvOTJyuPAo63hZwIk86nR/QHwJ94n6DhbhVMA/CouAjcHxn199cjdwXuC1w== X-Received: by 2002:a02:1948:: with SMTP id b69mr1729787jab.55.1561514911341; Tue, 25 Jun 2019 19:08:31 -0700 (PDT) Received: from minid (cbl-45-2-119-34.yyz.frontiernetworks.ca. [45.2.119.34]) by smtp.gmail.com with ESMTPSA id a7sm14327014iok.19.2019.06.25.19.08.30 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 25 Jun 2019 19:08:30 -0700 (PDT) From: Noam Postavsky To: Juri Linkov Subject: Re: bug#35802: Broken data loaded from uni-decomposition References: <878sv2idc0.fsf@mail.linkov.net> <85k1dybq2y.fsf@gmail.com> <87v9xie9a8.fsf@mail.linkov.net> <854l4wb3y6.fsf@gmail.com> <877e9r3j2i.fsf@mail.linkov.net> <87k1dmxopz.fsf@gmail.com> <877e9lcp3s.fsf@mail.linkov.net> <87muibur1i.fsf@gmail.com> <877e9e3jqv.fsf@mail.linkov.net> <871rzluu28.fsf@gmail.com> <87a7e82dw1.fsf@mail.linkov.net> Date: Tue, 25 Jun 2019 22:08:29 -0400 In-Reply-To: <87a7e82dw1.fsf@mail.linkov.net> (Juri Linkov's message of "Mon, 24 Jun 2019 00:25:02 +0300") Message-ID: <87d0j1rtcy.fsf@gmail.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 35802 Cc: 35802@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) tags 35802 fixed close 35802 27.1 quit Juri Linkov writes: > Thanks, after your fix I could continue to finish bug#35689. Pushed to master. 648fdbbcec 2019-06-25T22:00:03-04:00 "Don't bind search-spaces-regexp around possible autoload (Bug#35802)" https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=648fdbbcec159e6bfdb7cd06d32c59e8a17a055e From unknown Thu Jun 19 14:15:59 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Wed, 24 Jul 2019 11:24:04 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator