From unknown Fri Aug 15 20:48:25 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#3468 <3468@debbugs.gnu.org> To: bug#3468 <3468@debbugs.gnu.org> Subject: Status: Support drag and drop of text on MS Windows Reply-To: bug#3468 <3468@debbugs.gnu.org> Date: Sat, 16 Aug 2025 03:48:25 +0000 retitle 3468 Support drag and drop of text on MS Windows reassign 3468 emacs submitter 3468 "Erdkern Erdkern" severity 3468 wishlist tag 3468 help thanks From Erdkern2000@gmx.de Thu Jun 4 16:51:43 2009 Received: (at submit) by emacsbugs.donarmstrong.com; 4 Jun 2009 23:51:43 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.5-bugs.debian.org_2005_01_02 (2008-06-10) on rzlab.ucr.edu X-Spam-Level: * X-Spam-Bayes: score:0.5 Bayes not run. spammytokens:Tokens not available. hammytokens:Tokens not available. X-Spam-Status: No, score=1.6 required=4.0 tests=FOURLA,MONEY,STOCKLIKE autolearn=no version=3.2.5-bugs.debian.org_2005_01_02 Received: from lists.gnu.org (lists.gnu.org [199.232.76.165]) by rzlab.ucr.edu (8.14.3/8.14.3/Debian-5) with ESMTP id n54NpcbA011522 for ; Thu, 4 Jun 2009 16:51:39 -0700 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1MCMif-0007LM-6L for bug-gnu-emacs@gnu.org; Thu, 04 Jun 2009 19:51:37 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1MCMiY-0007HB-GZ for bug-gnu-emacs@gnu.org; Thu, 04 Jun 2009 19:51:35 -0400 Received: from [199.232.76.173] (port=48140 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1MCMVC-0008Ss-Ac for bug-gnu-emacs@gnu.org; Thu, 04 Jun 2009 19:37:42 -0400 Received: from mail.gmx.net ([213.165.64.20]:35975) by monty-python.gnu.org with smtp (Exim 4.60) (envelope-from ) id 1MC8eF-0005p9-62 for bug-gnu-emacs@gnu.org; Thu, 04 Jun 2009 04:50:07 -0400 Received: (qmail 28079 invoked by uid 0); 4 Jun 2009 07:03:24 -0000 Received: from 134.147.82.58 by www135.gmx.net with HTTP; Thu, 04 Jun 2009 09:03:21 +0200 (CEST) Content-Type: text/plain; charset="us-ascii" Date: Thu, 04 Jun 2009 09:03:21 +0200 From: "Erdkern Erdkern" Message-ID: <20090604070321.177690@gmx.net> MIME-Version: 1.0 Subject: drag and drop text To: bug-gnu-emacs@gnu.org X-Authenticated: #8514071 X-Flags: 0001 X-Mailer: WWW-Mail 6100 (Global Message Exchange) X-Priority: 3 X-Provags-ID: V01U2FsdGVkX1/AF3ZYrGvAEyIoGbbrqL5s7uoH+AxdSXbrZwb1cC F4mAJ6zHILAZ69pM57SqJ7MNUKZTDEhVKeEg== Content-Transfer-Encoding: 7bit X-GMX-UID: 1gROeSQLeWUkdGWM6G9nV3ojL0tsZo1/ X-FuHaFi: 0.52 X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6 (newer, 3) I use windows as operating system. I want to drag text from text editor or browser (say Wordpad or Firefox) and drop it in emacs, but this is not possible, drop is not allowed. On the other side, if I drag an unknown filetype (say, an *.rdp-File) into emacs, it is dropped as text. In GNU Emacs 22.3.1 (i386-mingw-nt5.1.2600) of 2008-09-06 on SOFT-MJASON Windowing system distributor `Microsoft Corp.', version 5.1.2600 configured using `configure --with-gcc (3.4)' Important settings: value of $LC_ALL: nil value of $LC_COLLATE: nil value of $LC_CTYPE: nil value of $LC_MESSAGES: nil value of $LC_MONETARY: nil value of $LC_NUMERIC: nil value of $LC_TIME: nil value of $LANG: DEU locale-coding-system: cp1252 default-enable-multibyte-characters: t Major mode: Lisp Interaction Minor modes in effect: cua-mode: t encoded-kbd-mode: t tooltip-mode: t tool-bar-mode: t mouse-wheel-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t unify-8859-on-encoding-mode: t utf-translate-cjk-mode: t auto-compression-mode: t column-number-mode: t line-number-mode: t transient-mark-mode: t Recent input: Recent messages: For information about GNU Emacs and the GNU system, type C-h C-a. Loading emacsbug... Loading regexp-opt...done Loading emacsbug...done Loading help-mode...done Auto-saving...done Undo! [29 times] Auto-saving...done *** E-Mail body has been placed on clipboard, please paste them here! *** -- GMX FreeDSL mit DSL 6.000 Flatrate und Telefonanschluss nur 17,95 Euro/mtl.! http://dslspecial.gmx.de/freedsl-aktionspreis/?ac=OM.AD.PD003K11308T4569a From cyd@stupidchicken.com Fri Jun 5 15:41:04 2009 Received: (at control) by emacsbugs.donarmstrong.com; 5 Jun 2009 22:41:04 +0000 X-Spam-Checker-Version: SpamAssassin 3.2.5-bugs.debian.org_2005_01_02 (2008-06-10) on rzlab.ucr.edu X-Spam-Level: X-Spam-Bayes: score:0.5 Bayes not run. spammytokens:Tokens not available. hammytokens:Tokens not available. X-Spam-Status: No, score=-2.8 required=4.0 tests=AWL,VALID_BTS_CONTROL autolearn=ham version=3.2.5-bugs.debian.org_2005_01_02 Received: from cyd.mit.edu (CYD.MIT.EDU [18.115.2.24]) by rzlab.ucr.edu (8.14.3/8.14.3/Debian-5) with ESMTP id n55Mf18u011997 for ; Fri, 5 Jun 2009 15:41:02 -0700 Received: by cyd.mit.edu (Postfix, from userid 1000) id 6E5A657E21E; Fri, 5 Jun 2009 18:41:03 -0400 (EDT) From: Chong Yidong To: control@debbugs.gnu.org Subject: severity 3468 wishlist Date: Fri, 05 Jun 2009 18:41:03 -0400 Message-ID: <87hbyue22o.fsf@cyd.mit.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii severity 3468 wishlist thanks From debbugs-submit-bounces@debbugs.gnu.org Mon Sep 30 11:30:00 2019 Received: (at 3468) by debbugs.gnu.org; 30 Sep 2019 15:30:00 +0000 Received: from localhost ([127.0.0.1]:60190 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iExce-00079Y-1x for submit@debbugs.gnu.org; Mon, 30 Sep 2019 11:30:00 -0400 Received: from quimby.gnus.org ([80.91.231.51]:55664) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iExcc-00079Q-1h for 3468@debbugs.gnu.org; Mon, 30 Sep 2019 11:29:58 -0400 Received: from cm-84.212.202.86.getinternet.no ([84.212.202.86] helo=marnie) by quimby.gnus.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1iExcY-0002q5-N1; Mon, 30 Sep 2019 17:29:57 +0200 From: Lars Ingebrigtsen To: "Erdkern Erdkern" Subject: Re: bug#3468: drag and drop text References: <20090604070321.177690@gmx.net> Date: Mon, 30 Sep 2019 17:29:54 +0200 In-Reply-To: <20090604070321.177690@gmx.net> (Erdkern Erdkern's message of "Thu, 04 Jun 2009 09:03:21 +0200") Message-ID: <87zhilajkd.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: "Erdkern Erdkern" writes: > I use windows as operating system. I want to drag text from text > editor or browser (say Wordpad or Firefox) and drop it in emacs, but > this is not possible, drop is not allowed. On the other side [...] Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 3468 Cc: 3468@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 (-) "Erdkern Erdkern" writes: > I use windows as operating system. I want to drag text from text > editor or browser (say Wordpad or Firefox) and drop it in emacs, but > this is not possible, drop is not allowed. On the other side, if I > drag an unknown filetype (say, an *.rdp-File) into emacs, it is > dropped as text. (I'm going through old bug reports that unfortunately didn't get any response at the time.) I tried this in Emacs 27, but on GNU/Linux, and it worked fine for me there. Are you still seeing this problem? -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no From debbugs-submit-bounces@debbugs.gnu.org Mon Sep 30 11:30:08 2019 Received: (at control) by debbugs.gnu.org; 30 Sep 2019 15:30:08 +0000 Received: from localhost ([127.0.0.1]:60194 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iExcm-0007Dl-Af for submit@debbugs.gnu.org; Mon, 30 Sep 2019 11:30:08 -0400 Received: from quimby.gnus.org ([80.91.231.51]:55684) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iExci-0007BL-Jd for control@debbugs.gnu.org; Mon, 30 Sep 2019 11:30:05 -0400 Received: from cm-84.212.202.86.getinternet.no ([84.212.202.86] helo=marnie) by quimby.gnus.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.89) (envelope-from ) id 1iExcf-0002qE-VO for control@debbugs.gnu.org; Mon, 30 Sep 2019 17:30:03 +0200 Date: Mon, 30 Sep 2019 17:30:01 +0200 Message-Id: <87y2y5ajk6.fsf@gnus.org> To: control@debbugs.gnu.org From: Lars Ingebrigtsen Subject: control message for bug #3468 X-Spam-Report: Spam detection software, running on the system "quimby.gnus.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: tags 3468 + moreinfo quit Content analysis details: (-2.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: control 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 3468 + moreinfo quit From debbugs-submit-bounces@debbugs.gnu.org Mon Sep 30 11:50:06 2019 Received: (at 3468) by debbugs.gnu.org; 30 Sep 2019 15:50:06 +0000 Received: from localhost ([127.0.0.1]:60264 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iExw6-0003SJ-6Y for submit@debbugs.gnu.org; Mon, 30 Sep 2019 11:50:06 -0400 Received: from eggs.gnu.org ([209.51.188.92]:55716) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iExw5-0003Rj-1t for 3468@debbugs.gnu.org; Mon, 30 Sep 2019 11:50:05 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]:41509) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1iExvz-0006l1-Mv; Mon, 30 Sep 2019 11:49:59 -0400 Received: from [176.228.60.248] (port=3670 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1iExvz-00068g-28; Mon, 30 Sep 2019 11:49:59 -0400 Date: Mon, 30 Sep 2019 18:49:57 +0300 Message-Id: <83sgodbx7e.fsf@gnu.org> From: Eli Zaretskii To: Lars Ingebrigtsen In-reply-to: <87zhilajkd.fsf@gnus.org> (message from Lars Ingebrigtsen on Mon, 30 Sep 2019 17:29:54 +0200) Subject: Re: bug#3468: drag and drop text References: <20090604070321.177690@gmx.net> <87zhilajkd.fsf@gnus.org> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 3468 Cc: 3468@debbugs.gnu.org, Erdkern2000@gmx.de 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: -3.3 (---) > From: Lars Ingebrigtsen > Date: Mon, 30 Sep 2019 17:29:54 +0200 > Cc: 3468@debbugs.gnu.org > > I tried this in Emacs 27, but on GNU/Linux, and it worked fine for me > there. Are you still seeing this problem? Emacs on MS-Windows doesn't support drag-n-drop of arbitrary text, it only supports drag-n-drop of file names. This is indicated by the "you can't do that" icon shown as the mouse pointer when you attempt to drop the text onto the Emacs frame. The Emacs User manual says in "Drag and Drop": The XDND and Motif drag and drop protocols, and the old KDE 1.x protocol, are currently supported. which doesn't include any MS-Windows protocols. The reason for not supporting this on MS-Windows is that the relevant system APIs are only available for C++ programs. If someone knows how to work around this limitation, I'm sure we will welcome patches or at least an explanation for how to do that in plain C. From debbugs-submit-bounces@debbugs.gnu.org Wed Aug 12 21:41:16 2020 Received: (at control) by debbugs.gnu.org; 13 Aug 2020 01:41:16 +0000 Received: from localhost ([127.0.0.1]:46335 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1k62F1-0007H2-Ub for submit@debbugs.gnu.org; Wed, 12 Aug 2020 21:41:16 -0400 Received: from mail-yb1-f176.google.com ([209.85.219.176]:34538) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1k62F1-0007Gn-8m for control@debbugs.gnu.org; Wed, 12 Aug 2020 21:41:15 -0400 Received: by mail-yb1-f176.google.com with SMTP id c9so2444543ybq.1 for ; Wed, 12 Aug 2020 18:41:15 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:in-reply-to:references:user-agent :mime-version:date:message-id:subject:to; bh=ujaoVyOYX1KH+zac8Dc4c0jTJHEE37+vodJ+nT8E/lc=; b=GAQFvDn+djN86e1+QXMfwxf7iPi4hrns962XYZCCt1A1YSqSkQddOgUmZq8TvJtU0w fMS6O3DUdLiJkayGMXrlKxyXkoCdGDDPETNKIo2bxJFJoJj/xUmooBJpgYbsUWrtjuOx pk+CGljUxbcgKKdspSBeBJFeHqFnTmp8xi+jU6C9UFaXRnV/q1DJlyGEhTphHOW7ihMm aBelwPEfFonmKZS+KlYFyb5LKvAm9CPLl++dPEvzSmKdZ2ewmjJadY1YNpQydp0A0D9T ecL8Vl2QgNfoa/1mbpJia+9NSqAo+AggqSaGPjWvdYvQ0xYfPwQ+SuoDVLdgxloILeb8 Zc7Q== X-Gm-Message-State: AOAM5306rpd7YseH06NJvD/qsxaYeeAQq5C98+vurdomuRL3XyxZMtjS tgOIHcg2FBVr9AmwDyaEIFPa4+KwXfWMM3ySXfvHBTuobfw= X-Google-Smtp-Source: ABdhPJz+07rEYdNbG3L95hbcF7CCeDtrJ17EQlMvogNw3jt8dwC7gPm5QBURibhuyIw/Oh/WmRtBhe25NgOvaqa6TcY= X-Received: by 2002:a5b:508:: with SMTP id o8mr3564252ybp.43.1597282869589; Wed, 12 Aug 2020 18:41:09 -0700 (PDT) Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Wed, 12 Aug 2020 18:41:09 -0700 From: Stefan Kangas In-Reply-To: <87y2y5ajk6.fsf@gnus.org> (Lars Ingebrigtsen's message of "Mon, 30 Sep 2019 17:30:01 +0200") References: <87y2y5ajk6.fsf@gnus.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) MIME-Version: 1.0 Date: Wed, 12 Aug 2020 18:41:09 -0700 Message-ID: Subject: Re: control message for bug #3468 To: control Content-Type: text/plain; charset="UTF-8" X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: control 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: 0.0 (/) retitle 3468 Support drag and drop of text on MS Windows tags 3468 - moreinfo tags 3468 + help thanks From debbugs-submit-bounces@debbugs.gnu.org Sat Sep 28 17:53:30 2024 Received: (at 3468) by debbugs.gnu.org; 28 Sep 2024 21:53:30 +0000 Received: from localhost ([127.0.0.1]:48749 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sufNY-00025V-UZ for submit@debbugs.gnu.org; Sat, 28 Sep 2024 17:53:29 -0400 Received: from mail.imayhem.com ([82.223.54.191]:46487 helo=zealous-pike.82-223-54-191.plesk.page) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sufNU-00024r-Vs for 3468@debbugs.gnu.org; Sat, 28 Sep 2024 17:53:27 -0400 Received: from [192.168.68.105] (111.red-88-21-7.staticip.rima-tde.net [88.21.7.111]) by zealous-pike.82-223-54-191.plesk.page (Postfix) with ESMTPSA id 9AC5C800D1 for <3468@debbugs.gnu.org>; Sat, 28 Sep 2024 21:52:46 +0000 (UTC) Authentication-Results: zealous-pike.82-223-54-191.plesk.page; spf=pass (sender IP is 88.21.7.111) smtp.mailfrom=cpardo@imayhem.com smtp.helo=[192.168.68.105] Received-SPF: pass (zealous-pike.82-223-54-191.plesk.page: connection is authenticated) Content-Type: multipart/mixed; boundary="------------bpXDjFiTX3F1gJwJnVP0JZE0" Message-ID: <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> Date: Sat, 28 Sep 2024 23:52:45 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird From: Cecilio Pardo To: 3468@debbugs.gnu.org Subject: Re: bug#3468: drag and drop text Content-Language: es-ES X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 3468 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 (-) This is a multi-part message in MIME format. --------------bpXDjFiTX3F1gJwJnVP0JZE0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit This patch implements drag-and-drop for w32 for files and text, using C, not C++. This should work from Windows 95, but I can't test it. Because of this, the prior implementation with WM_DROPFILES has been removed with '#if 0', and can probably be completely removed. I tested with mingw-w64 and mingw on Windows 11. Text is inserted at point position, not at drop position. I don't know how this works on other platforms. --------------bpXDjFiTX3F1gJwJnVP0JZE0 Content-Type: text/plain; charset=UTF-8; name="0001-Implement-drag-n-drop-for-w32-with-support-for-files.patch" Content-Disposition: attachment; filename*0="0001-Implement-drag-n-drop-for-w32-with-support-for-files.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSAxNzEyYWIzYmExMDliMmJlYWZhNDE4ZjBiMTJkMDljODM2NTkwYjJjIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBDZWNpbGlvIFBhcmRvIDxjcGFyZG9AaW1heWhlbS5j b20+CkRhdGU6IEZyaSwgMjcgU2VwIDIwMjQgMjM6NTg6MDIgKzAyMDAKU3ViamVjdDogW1BB VENIXSBJbXBsZW1lbnQgZHJhZy1uLWRyb3AgZm9yIHczMiB3aXRoIHN1cHBvcnQgZm9yIGZp bGVzIGFuZCB0ZXh0CgpJbXBsZW1lbnQgZG5kIHdpdGggSURyb3BUYXJnZXQKCiogbGlzcC90 ZXJtL3czMi13aW4uZWwgKHczMi1kcmFnLW4tZHJvcCk6IGNoYW5nZWQgdG8gaGFuZGxlIGZp bGVzIG9yIHN0cmluZ3MKKiBzcmMvdzMyZm5zLmMKKHByb2Nlc3NfZHJvcGZpbGVzKTogbmV3 LCBjb252ZXJ0IERST1BGSUxFUyBzdHJ1Y3QgdG8gYXJyYXkgb2Ygc3RyaW5ncwoodzMyX2Ny ZWF0ZXdpbmRvdyk6IGFzc2lnbiBhbiBJRHJvcFRhcmdldCB0byBlYWNoIG5ldyBmcmFtZQoo dzMyX25hbWVfb2ZfbWVzc2FnZSk6IGFkZGVkIG5ldyBtZXNzYWdlcwoodzMyX21zZ19wdW1w KTogQ2hhbmdlZCBDb0luaXRpYWxpemUgdG8gT2xlSW5pdGlhbGl6ZSwgbmVlZGVkIGJ5IHRo ZQpkcmFnLW4tZHJvcCBmdW5jdGlvbnMKKHczMl93bmRfcHJvYyk6IG5ldyBzdHJ1Y3QgdzMy X2Ryb3BfdGFyZ2V0LCBhbmQgdzMyX2Ryb3BfdGFyZ2V0XyoKZnVuY3Rpb25zIHRvIGltcGxl bWVudCB0aGUgSURyb3BUYXJnZXQgaW50ZXJmYWNlCiogc3JjL3czMnRlcm0uYyAodzMyX3Jl YWRfc29ja2V0KTogaGFuZGxlIFdNX0VNQUNTX0RST1BGSUxFUywKV01fRU1BQ1NfRFJPUFNU UklORywgc2tpcCBXTV9FTUFDU19EUk9QRklMRVMKKiBzcmMvdzMydGVybS5oICgpOiBhZGQg V01fRU1BQ1NfRFJPUEZJTEVTLCBXTV9FTUFDU19EUk9QU1RSSU5HCi0tLQogbGlzcC90ZXJt L3czMi13aW4uZWwgfCAgMTkgKystLQogc3JjL3czMmZucy5jICAgICAgICAgfCAyMDIgKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLQogc3JjL3czMnRlcm0u YyAgICAgICAgfCAgNDYgKysrKysrKysrKwogc3JjL3czMnRlcm0uaCAgICAgICAgfCAgIDQg Ky0KIDQgZmlsZXMgY2hhbmdlZCwgMjYwIGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL2xpc3AvdGVybS93MzItd2luLmVsIGIvbGlzcC90ZXJtL3czMi13 aW4uZWwKaW5kZXggYjU3YjNkZDNiZWYuLmFjODVlYzhkOTQ1IDEwMDY0NAotLS0gYS9saXNw L3Rlcm0vdzMyLXdpbi5lbAorKysgYi9saXNwL3Rlcm0vdzMyLXdpbi5lbApAQCAtMTMxLDgg KzEzMSwxMSBAQCB3MzItZHJvcHBlZC1maWxlLXRvLXVybAogICAgZmlsZS1uYW1lKSkKIAog KGRlZnVuIHczMi1kcmFnLW4tZHJvcCAoZXZlbnQgJm9wdGlvbmFsIG5ldy1mcmFtZSkKLSAg IkVkaXQgdGhlIGZpbGVzIGxpc3RlZCBpbiB0aGUgZHJhZy1uLWRyb3AgRVZFTlQuCi1Td2l0 Y2ggdG8gYSBidWZmZXIgZWRpdGluZyB0aGUgbGFzdCBmaWxlIGRyb3BwZWQuIgorICAiSWYg dGhlIGRyYWctbi1kcm9wIEVWRU5UIGlzIGZvciBhIGZpbGUgb3IgZmlsZXMsIGVkaXQgdGhv c2UKK2ZpbGVzLiBTd2l0Y2ggdG8gYSBidWZmZXIgZWRpdGluZyB0aGUgbGFzdCBmaWxlIGRy b3BwZWQuCisKK0lmIHRoZSBFVkVOVCBpcyBmb3IgdGV4dCwgaW5zZXJ0IHRoZSB0ZXh0IGF0 IHBvaW50IG9uIHRoZSBidWZmZXIgc2hvd24KK2luIHRoZSB0YXJnZXQgd2luZG93LCBvciBh ZGQgdG8ga2lsbCByaW5nIGlmIHRoYXQgYnVmZmVyIGlzIHJlYWQtb25seS4iCiAgIChpbnRl cmFjdGl2ZSAiZSIpCiAgIChzYXZlLWV4Y3Vyc2lvbgogICAgIDs7IE1ha2Ugc3VyZSB0aGUg ZHJvcCB0YXJnZXQgaGFzIHBvc2l0aXZlIGNvLW9yZHMKQEAgLTE0MCw2ICsxNDMsNyBAQCB3 MzItZHJhZy1uLWRyb3AKICAgICA7OyB3b24ndCB3b3JrLiAgPHNreEB0YXJkaXMuZWQuYWMu dWs+CiAgICAgKGxldCogKCh3aW5kb3cgKHBvc24td2luZG93IChldmVudC1zdGFydCBldmVu dCkpKQogCSAgIChjb29yZHMgKHBvc24teC15IChldmVudC1zdGFydCBldmVudCkpKQorICAg ICAgICAgICAoYXJnIChjYXIgKGNkciAoY2RyIGV2ZW50KSkpKQogCSAgICh4IChjYXIgY29v cmRzKSkKIAkgICAoeSAoY2RyIGNvb3JkcykpKQogICAgICAgKGlmIChhbmQgKD4geCAwKSAo PiB5IDApKQpAQCAtMTUwLDExICsxNTQsMTIgQEAgdzMyLWRyYWctbi1kcm9wCiAgICAgICAo cmFpc2UtZnJhbWUpCiAgICAgICAoc2V0cSB3aW5kb3cgKHNlbGVjdGVkLXdpbmRvdykpCiAK LSAgICAgIChkbmQtaGFuZGxlLW11bHRpcGxlLXVybHMKLSAgICAgICB3aW5kb3cKLSAgICAg ICAobWFwY2FyICMndzMyLWRyb3BwZWQtZmlsZS10by11cmwKLSAgICAgICAgICAgICAgIChj YXIgKGNkciAoY2RyIGV2ZW50KSkpKQotICAgICAgICdwcml2YXRlKSkpKQorICAgICAgKGlm IChzdHJpbmdwIGFyZykKKyAgICAgICAgICAoZG5kLWluc2VydC10ZXh0IHdpbmRvdyAnY29w eSBhcmcpCisgICAgICAgIChkbmQtaGFuZGxlLW11bHRpcGxlLXVybHMKKyAgICAgICAgIHdp bmRvdworICAgICAgICAgKG1hcGNhciAjJ3czMi1kcm9wcGVkLWZpbGUtdG8tdXJsIGFyZykK KyAgICAgICAgICdwcml2YXRlKSkpKSkKIAogKGRlZnVuIHczMi1kcmFnLW4tZHJvcC1vdGhl ci1mcmFtZSAoZXZlbnQpCiAgICJFZGl0IHRoZSBmaWxlcyBsaXN0ZWQgaW4gdGhlIGRyYWct bi1kcm9wIEVWRU5ULCBpbiBvdGhlciBmcmFtZXMuCmRpZmYgLS1naXQgYS9zcmMvdzMyZm5z LmMgYi9zcmMvdzMyZm5zLmMKaW5kZXggMGEzZjVjMzhhNTguLmZkYmEzNTI0ODQ2IDEwMDY0 NAotLS0gYS9zcmMvdzMyZm5zLmMKKysrIGIvc3JjL3czMmZucy5jCkBAIC0zNCw2ICszNCwx MiBAQCAjZGVmaW5lIF9XSU4zMl9XSU5OVCAweDA2MDAKIAogI2luY2x1ZGUgPGMtY3R5cGUu aD4KIAorI2RlZmluZSBDT0JKTUFDUk9TIC8qIEFzayBmb3IgQyBkZWZpbml0aW9ucyBmb3Ig Q09NLiAgKi8KKyNpbmNsdWRlIDxzaGxvYmouaD4KKyNpbmNsdWRlIDxvbGVpZGwuaD4KKyNp bmNsdWRlIDxvYmppZGwuaD4KKyNpbmNsdWRlIDxvbGUyLmg+CisKICNpbmNsdWRlICJsaXNw LmgiCiAjaW5jbHVkZSAidzMydGVybS5oIgogI2luY2x1ZGUgImZyYW1lLmgiCkBAIC0zNTks NiArMzY1LDEwIEBAICNkZWZpbmUgV1NfRVhfTk9BQ1RJVkFURSAweDA4MDAwMDAwTAogCiBz dGF0aWMgc3RydWN0IHczMl9kaXNwbGF5X2luZm8gKnczMl9kaXNwbGF5X2luZm9fZm9yX25h bWUgKExpc3BfT2JqZWN0KTsKIAorc3RhdGljIHZvaWQgbXlfcG9zdF9tc2cgKFczMk1zZyos IEhXTkQsIFVJTlQsIFdQQVJBTSwgTFBBUkFNKTsKK3N0YXRpYyB1bnNpZ25lZCBpbnQgdzMy X2dldF9tb2RpZmllcnMgKHZvaWQpOworCisKIC8qIExldCB0aGUgdXNlciBzcGVjaWZ5IGEg ZGlzcGxheSB3aXRoIGEgZnJhbWUuCiAgICBuaWwgc3RhbmRzIGZvciB0aGUgc2VsZWN0ZWQg ZnJhbWUtLW9yLCBpZiB0aGF0IGlzIG5vdCBhIHczMiBmcmFtZSwKICAgIHRoZSBmaXJzdCBk aXNwbGF5IG9uIHRoZSBsaXN0LiAgKi8KQEAgLTI0NjQsNiArMjQ3NCwxNjggQEAgdzMyX2Ny ZWF0ZWhzY3JvbGxiYXIgKHN0cnVjdCBmcmFtZSAqZiwgc3RydWN0IHNjcm9sbF9iYXIgKiBi YXIpCiAgIHJldHVybiBod25kOwogfQogCisvKiBGcm9tIHRoZSBEUk9QRklMRVMgc3RydWN0 LCBleHRyYWN0IHRoZSBsaXN0IG9mIGZpbGVuYW1lcy4gIFJldHVybnMgYQorICAgTlVMTCB0 ZXJtaW5hdGVkIG1hbGxvYyBhcnJheSBvZiBtYWxsb2Mgc3RyaW5ncyB0aGF0IHNob3VsZCBi ZSBmcmVlZAorICAgYnkgdGhlIGNhbGxlci4gICovCitzdGF0aWMgY2hhciAqKgorcHJvY2Vz c19kcm9wZmlsZXMgKERST1BGSUxFUyAqZmlsZXMpCit7CisgIGNoYXIgKnN0YXJ0X29mX2Zp bGVzID0gKGNoYXIqKWZpbGVzICsgZmlsZXMtPnBGaWxlczsKKyAgaW50IGNvdW50ID0gMDsK KyAgY2hhciBmaWxlbmFtZVtNQVhfUEFUSF07CisgIGNoYXIgKipmaWxlbmFtZXM7CisKKyAg aWYgKGZpbGVzLT5mV2lkZSkKKyAgICB7CisgICAgICBXQ0hBUiAqcCA9IChXQ0hBUiopc3Rh cnRfb2ZfZmlsZXM7CisgICAgICBmb3IgKCA7ICpwOyBjb3VudCArKywgcCArPSB3Y3NsZW4g KHApICsgMSkKKwk7CisgICAgICBmaWxlbmFtZXMgPSBtYWxsb2MgKChjb3VudCsxKSAqIHNp emVvZiAoY2hhciopKTsKKyAgICAgIGZpbGVuYW1lcyBbY291bnRdID0gTlVMTDsKKyAgICAg IHAgPSAoV0NIQVIqKXN0YXJ0X29mX2ZpbGVzOworICAgICAgZm9yICggaW50IGkgPSAwOyAq cDsgcCArPSB3Y3NsZW4gKHApICsgMSwgaSsrKQorCXsKKwkgIGZpbGVuYW1lX2Zyb21fdXRm MTYgKHAsIGZpbGVuYW1lKTsKKwkgIGZpbGVuYW1lcyBbaV0gPSB4c3RyZHVwIChmaWxlbmFt ZSk7CisJfQorICAgIH0KKyAgZWxzZQorICAgIHsKKyAgICAgIGNoYXIgKnAgPSBzdGFydF9v Zl9maWxlczsKKyAgICAgIGZvciAoIDsgKnA7IGNvdW50ICsrLCBwICs9IHN0cmxlbiAocCkg KyAxKQorCTsKKyAgICAgIGZpbGVuYW1lcyA9IG1hbGxvYyAoKGNvdW50ICsgMSkgKiBzaXpl b2YgKGNoYXIqKSk7CisgICAgICBmaWxlbmFtZXMgW2NvdW50XSA9IE5VTEw7CisgICAgICBw ID0gc3RhcnRfb2ZfZmlsZXM7CisgICAgICBmb3IgKCBpbnQgaSA9IDA7ICpwOyBwICs9IHN0 cmxlbihwKSArIDEsIGkrKykKKwl7CisJICBmaWxlbmFtZV9mcm9tX2Fuc2kgKHAsIGZpbGVu YW1lKTsKKwkgIGZpbGVuYW1lc1tpXSA9IHhzdHJkdXAgKGZpbGVuYW1lKTsKKwl9CisgICAg fQorICByZXR1cm4gZmlsZW5hbWVzOworfQorCitzdHJ1Y3QgdzMyX2Ryb3BfdGFyZ2V0IHsK KyAgLyogaV9kcm9wX3RhcmdldCBtdXN0IGJlIHRoZSBmaXJzdCBtZW1iZXIuICAqLworICBJ RHJvcFRhcmdldCBpX2Ryb3BfdGFyZ2V0OworICBIV05EIGh3bmQ7Cit9OworCitzdGF0aWMg SFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRQordzMyX2Ryb3BfdGFyZ2V0X1F1ZXJ5SW50ZXJm YWNlIChJRHJvcFRhcmdldCAqdCwgUkVGSUlEIHJpLCB2b2lkICoqcikKK3sKKyAgcmV0dXJu IEVfTk9JTlRFUkZBQ0U7Cit9CisKK3N0YXRpYyBVTE9ORyBTVERNRVRIT0RDQUxMVFlQRQor dzMyX2Ryb3BfdGFyZ2V0X0FkZFJlZiAoSURyb3BUYXJnZXQgKlRoaXMpCit7CisgIHJldHVy biAxOworfQorCitzdGF0aWMgVUxPTkcgU1RETUVUSE9EQ0FMTFRZUEUKK3czMl9kcm9wX3Rh cmdldF9SZWxlYXNlIChJRHJvcFRhcmdldCAqVGhpcykKK3sKKyAgc3RydWN0IHczMl9kcm9w X3RhcmdldCAqdGFyZ2V0ID0gKHN0cnVjdCB3MzJfZHJvcF90YXJnZXQgKilUaGlzOworICB4 ZnJlZSggdGFyZ2V0LT5pX2Ryb3BfdGFyZ2V0LmxwVnRibCApOworICB4ZnJlZSggdGFyZ2V0 ICk7CisgIHJldHVybiAwOworfQorCitzdGF0aWMgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQ RQordzMyX2Ryb3BfdGFyZ2V0X0RyYWdFbnRlciggSURyb3BUYXJnZXQgKlRoaXMsIElEYXRh T2JqZWN0ICpwRGF0YU9iaiwgRFdPUkQgZ3JmS2V5U3RhdGUsIFBPSU5UTCBwdCwgRFdPUkQg KnBkd0VmZmVjdCkKK3sKKyAgKnBkd0VmZmVjdCA9IERST1BFRkZFQ1RfQ09QWTsKKyAgcmV0 dXJuIFNfT0s7Cit9CisKK3N0YXRpYyBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFCit3MzJf ZHJvcF90YXJnZXRfRHJhZ092ZXIgKCBJRHJvcFRhcmdldCAqVGhpcywgRFdPUkQgZ3JmS2V5 U3RhdGUsIFBPSU5UTCBwdCwgRFdPUkQgKnBkd0VmZmVjdCkKK3sKKyAgKnBkd0VmZmVjdCA9 IERST1BFRkZFQ1RfQ09QWTsKKyAgcmV0dXJuIFNfT0s7Cit9CisKK3N0YXRpYyBIUkVTVUxU IFNURE1FVEhPRENBTExUWVBFCit3MzJfZHJvcF90YXJnZXRfRHJhZ0xlYXZlKCBJRHJvcFRh cmdldCAqVGhpcyApCit7CisgIHJldHVybiBTX09LOworfQorCitzdGF0aWMgSFJFU1VMVCBT VERNRVRIT0RDQUxMVFlQRQordzMyX2Ryb3BfdGFyZ2V0X0Ryb3AgKElEcm9wVGFyZ2V0ICpU aGlzLCBJRGF0YU9iamVjdCAqcERhdGFPYmosCisJCSAgICAgIERXT1JEIGdyZktleVN0YXRl LCBQT0lOVEwgcHQsIERXT1JEICpwZHdFZmZlY3QpCit7CisgIHN0cnVjdCB3MzJfZHJvcF90 YXJnZXQgKnRhcmdldCA9IChzdHJ1Y3QgdzMyX2Ryb3BfdGFyZ2V0ICopVGhpczsKKyAgKnBk d0VmZmVjdCA9IERST1BFRkZFQ1RfQ09QWTsKKworICBXMzJNc2cgbXNnID0gezB9OworICBt c2cuZHdNb2RpZmllcnMgPSB3MzJfZ2V0X21vZGlmaWVycygpOworICBtc2cubXNnLnRpbWUg PSBHZXRNZXNzYWdlVGltZSAoKTsKKyAgbXNnLm1zZy5wdC54ID0gcHQueDsKKyAgbXNnLm1z Zy5wdC55ID0gcHQueTsKKworICBTVEdNRURJVU0gc3RnbWVkaXVtOworCisgIC8qIFRyeSBm b3IgZHJvcHBlZCBmaWxlcyAoQ0ZfSERST1ApLiAgKi8KKyAgRk9STUFURVRDIGZvcm1hdGV0 YyA9IHsgQ0ZfSERST1AsIE5VTEwsIERWQVNQRUNUX0NPTlRFTlQsIC0xLCBUWU1FRF9IR0xP QkFMIH07CisgIGlmIChTVUNDRUVERUQgKElEYXRhT2JqZWN0X0dldERhdGEgKHBEYXRhT2Jq LCAmZm9ybWF0ZXRjLCAmc3RnbWVkaXVtKSkpCisgICAgeworICAgICAgaWYgKHN0Z21lZGl1 bS50eW1lZCA9PSBUWU1FRF9IR0xPQkFMKQorCXsKKwkgIERST1BGSUxFUyAqZmlsZXMgPSAo RFJPUEZJTEVTKilHbG9iYWxMb2NrIChzdGdtZWRpdW0uaEdsb2JhbCk7CisJICBpZiAoZmls ZXMpCisJICAgICAgbXlfcG9zdF9tc2cgKCZtc2csIHRhcmdldC0+aHduZCwgV01fRU1BQ1Nf RFJPUEZJTEVTLAorCQkJICAgMCwgKExQQVJBTSlwcm9jZXNzX2Ryb3BmaWxlcyAoZmlsZXMp ICk7CisJICBHbG9iYWxVbmxvY2sgKHN0Z21lZGl1bS5oR2xvYmFsKTsKKwl9CisgICAgICBS ZWxlYXNlU3RnTWVkaXVtICgmc3RnbWVkaXVtKTsKKyAgICAgIHJldHVybiBTX09LOworICAg IH0KKworICBmb3JtYXRldGMuY2ZGb3JtYXQgPSBDRl9VTklDT0RFVEVYVDsKKyAgaWYgKFNV Q0NFRURFRCAoSURhdGFPYmplY3RfR2V0RGF0YSAocERhdGFPYmosICZmb3JtYXRldGMsICZz dGdtZWRpdW0pKSkKKyAgICB7CisgICAgICBpZiAoc3RnbWVkaXVtLnR5bWVkID09IFRZTUVE X0hHTE9CQUwpCisJeworCSAgV0NIQVIgKnRleHQgPSAoV0NIQVIqKUdsb2JhbExvY2sgKHN0 Z21lZGl1bS5oR2xvYmFsKTsKKwkgIExpc3BfT2JqZWN0IHRleHRfc3RyaW5nID0gZnJvbV91 bmljb2RlX2J1ZmZlciAodGV4dCk7CisJICBjaGFyICp1dGY4ID0geHN0cmR1cCAoU1NEQVRB IChFTkNPREVfVVRGXzggKHRleHRfc3RyaW5nKSkpOworCSAgbXlfcG9zdF9tc2cgKCZtc2cs IHRhcmdldC0+aHduZCwgV01fRU1BQ1NfRFJPUFNUUklORywKKwkJICAgICAgIDAsIChMUEFS QU0pdXRmOCApOworCSAgR2xvYmFsVW5sb2NrIChzdGdtZWRpdW0uaEdsb2JhbCk7CisJfQor ICAgICAgUmVsZWFzZVN0Z01lZGl1bSAoJnN0Z21lZGl1bSk7CisgICAgICByZXR1cm4gU19P SzsKKyAgICB9CisKKyAgZm9ybWF0ZXRjLmNmRm9ybWF0ID0gQ0ZfVEVYVDsKKyAgaWYgKFNV Q0NFRURFRCAoSURhdGFPYmplY3RfR2V0RGF0YSAocERhdGFPYmosICZmb3JtYXRldGMsICZz dGdtZWRpdW0pKSkKKyAgICB7CisgICAgICBpZiAoc3RnbWVkaXVtLnR5bWVkID09IFRZTUVE X0hHTE9CQUwpCisJeworCSAgY2hhciAqdGV4dCA9IChjaGFyKilHbG9iYWxMb2NrIChzdGdt ZWRpdW0uaEdsb2JhbCk7CisKKwkgIGludCBsID0gc3RybGVuICh0ZXh0KTsKKwkgIFdDSEFS ICp0ZXh0X3V0ZjE2ID0geG1hbGxvYyAoc2l6ZW9mIChXQ0hBUikgKiBsICsgMSApOzsKKwkg IGlmIChNdWx0aUJ5dGVUb1dpZGVDaGFyIChDUF9BQ1AsIDAsIHRleHQsIGwsIHRleHRfdXRm MTYsIGwgKyAxKSkKKwkgICAgeworCSAgICAgIExpc3BfT2JqZWN0IHRleHRfc3RyaW5nID0g ZnJvbV91bmljb2RlX2J1ZmZlciAodGV4dF91dGYxNik7CisJICAgICAgY2hhciAqdXRmOCA9 IHhzdHJkdXAgKFNTREFUQSAoRU5DT0RFX1VURl84ICh0ZXh0X3N0cmluZykpKTsKKwkgICAg ICBteV9wb3N0X21zZyAoJm1zZywgdGFyZ2V0LT5od25kLCBXTV9FTUFDU19EUk9QU1RSSU5H LAorCQkJICAgMCwgKExQQVJBTSl1dGY4ICk7CisJICAgIH0KKwkgIHhmcmVlICh0ZXh0X3V0 ZjE2KTsKKwkgIEdsb2JhbFVubG9jayAoc3RnbWVkaXVtLmhHbG9iYWwpOworCX0KKyAgICAg IFJlbGVhc2VTdGdNZWRpdW0gKCZzdGdtZWRpdW0pOworICAgICAgcmV0dXJuIFNfT0s7Cisg ICAgfQorCisgIHJldHVybiBTX09LOworfQorCiBzdGF0aWMgdm9pZAogdzMyX2NyZWF0ZXdp bmRvdyAoc3RydWN0IGZyYW1lICpmLCBpbnQgKmNvb3JkcykKIHsKQEAgLTI1NDgsNyArMjcy MCwyMyBAQCB3MzJfY3JlYXRld2luZG93IChzdHJ1Y3QgZnJhbWUgKmYsIGludCAqY29vcmRz KQogICAgICAgU2V0V2luZG93TG9uZyAoaHduZCwgV05EX0JBQ0tHUk9VTkRfSU5ERVgsIEZS QU1FX0JBQ0tHUk9VTkRfUElYRUwgKGYpKTsKIAogICAgICAgLyogRW5hYmxlIGRyYWctbi1k cm9wLiAgKi8KKyAgICAgIHN0cnVjdCB3MzJfZHJvcF90YXJnZXQgKmRyb3BfdGFyZ2V0ID0g eG1hbGxvYyAoc2l6ZW9mIChzdHJ1Y3QgdzMyX2Ryb3BfdGFyZ2V0KSk7CisgICAgICBkcm9w X3RhcmdldC0+IGh3bmQgPSBod25kOworCisgICAgICBJRHJvcFRhcmdldFZ0YmwgKnZ0Ymwg PSB4bWFsbG9jIChzaXplb2YgKElEcm9wVGFyZ2V0VnRibCkpOworICAgICAgZHJvcF90YXJn ZXQtPmlfZHJvcF90YXJnZXQubHBWdGJsID0gdnRibDsKKyAgICAgIHZ0YmwtPlF1ZXJ5SW50 ZXJmYWNlID0gdzMyX2Ryb3BfdGFyZ2V0X1F1ZXJ5SW50ZXJmYWNlOworICAgICAgdnRibC0+ QWRkUmVmID0gdzMyX2Ryb3BfdGFyZ2V0X0FkZFJlZjsKKyAgICAgIHZ0YmwtPlJlbGVhc2Ug PSB3MzJfZHJvcF90YXJnZXRfUmVsZWFzZTsKKyAgICAgIHZ0YmwtPkRyYWdFbnRlciA9IHcz Ml9kcm9wX3RhcmdldF9EcmFnRW50ZXI7CisgICAgICB2dGJsLT5EcmFnT3ZlciA9IHczMl9k cm9wX3RhcmdldF9EcmFnT3ZlcjsKKyAgICAgIHZ0YmwtPkRyYWdMZWF2ZSA9IHczMl9kcm9w X3RhcmdldF9EcmFnTGVhdmU7CisgICAgICB2dGJsLT5Ecm9wID0gdzMyX2Ryb3BfdGFyZ2V0 X0Ryb3A7CisgICAgICBSZWdpc3RlckRyYWdEcm9wIChod25kLCAmZHJvcF90YXJnZXQtPmlf ZHJvcF90YXJnZXQpOworCisjaWYgMAogICAgICAgRHJhZ0FjY2VwdEZpbGVzIChod25kLCBU UlVFKTsKKyNlbmRpZgogCiAgICAgICAvKiBFbmFibGUgc3lzdGVtIGxpZ2h0L2RhcmsgdGhl bWUuICAqLwogICAgICAgdzMyX2FwcGx5dGhlbWUgKGh3bmQpOwpAQCAtMzM5OSw2ICszNTg3 LDggQEAgI2RlZmluZSBNKG1zZykgeyBtc2csICMgbXNnIH0KICAgICAgIE0gKFdNX0VNQUNT X1BBSU5UKSwKICAgICAgIE0gKFdNX0VNQUNTX0lNRV9TVEFUVVMpLAogICAgICAgTSAoV01f Q0hBUiksCisgICAgICBNIChXTV9FTUFDU19EUk9QRklMRVMpLAorICAgICAgTSAoV01fRU1B Q1NfRFJPUFNUUklORyksCiAjdW5kZWYgTQogICAgICAgeyAwLCAwIH0KICAgfTsKQEAgLTM0 NjUsMTMgKzM2NTUsMTQgQEAgdzMyX21zZ19wdW1wIChkZWZlcnJlZF9tc2cgKiBtc2dfYnVm KQogCSAgICAgIC8qIFByb2R1Y2VkIGJ5IGNvbXBsZXRlX2RlZmVycmVkX21zZzsganVzdCBp Z25vcmUuICAqLwogCSAgICAgIGJyZWFrOwogCSAgICBjYXNlIFdNX0VNQUNTX0NSRUFURVdJ TkRPVzoKLQkgICAgICAvKiBJbml0aWFsaXplIENPTSBmb3IgdGhpcyB3aW5kb3cuIEV2ZW4g dGhvdWdoIHdlIGRvbid0IHVzZSBpdCwKLQkJIHNvbWUgdGhpcmQgcGFydHkgc2hlbGwgZXh0 ZW5zaW9ucyBjYW4gY2F1c2UgaXQgdG8gYmUgdXNlZCBpbgorCSAgICAgIC8qIEluaXRpYWxp emUgQ09NIGZvciB0aGlzIHdpbmRvdy4gTmVlZGVkIGZvciBSZWdpc3RlckRyYWdEcm9wLgor CQkgU29tZSB0aGlyZCBwYXJ0eSBzaGVsbCBleHRlbnNpb25zIGNhbiBjYXVzZSBpdCB0byBi ZSB1c2VkIGluCiAJCSBzeXN0ZW0gZGlhbG9ncywgd2hpY2ggY2F1c2VzIGEgY3Jhc2ggaWYg aXQgaXMgbm90IGluaXRpYWxpemVkLgogCQkgVGhpcyBpcyBhIGtub3duIGJ1ZyBpbiBXaW5k b3dzLCB3aGljaCB3YXMgZml4ZWQgbG9uZyBhZ28sIGJ1dAogCQkgdGhlIHBhdGNoIGZvciBY UCBpcyBub3QgcHVibGljbHkgYXZhaWxhYmxlIHVudGlsIFhQIFNQMywKIAkJIGFuZCBvbGRl ciB2ZXJzaW9ucyB3aWxsIG5ldmVyIGJlIHBhdGNoZWQuICAqLwotCSAgICAgIENvSW5pdGlh bGl6ZSAoTlVMTCk7CisJICAgICAgT2xlSW5pdGlhbGl6ZSAoTlVMTCk7CisKIAkgICAgICB3 MzJfY3JlYXRld2luZG93ICgoc3RydWN0IGZyYW1lICopIG1zZy53UGFyYW0sCiAJCQkJKGlu dCAqKSBtc2cubFBhcmFtKTsKIAkgICAgICBpZiAoIVBvc3RUaHJlYWRNZXNzYWdlIChkd01h aW5UaHJlYWRJZCwgV01fRU1BQ1NfRE9ORSwgMCwgMCkpCkBAIC01MTA2LDcgKzUyOTcsOSBA QCAjZGVmaW5lIE1PVVNFRVZFTlRGX0ZST01UT1VDSCAweEZGNTE1NzAwCiAgICAgICByZXR1 cm4gMDsKIAogICAgIGNhc2UgV01fTU9VU0VXSEVFTDoKKyNpZiAwCiAgICAgY2FzZSBXTV9E Uk9QRklMRVM6CisjZW5kaWYKICAgICAgIHdtc2cuZHdNb2RpZmllcnMgPSB3MzJfZ2V0X21v ZGlmaWVycyAoKTsKICAgICAgIG15X3Bvc3RfbXNnICgmd21zZywgaHduZCwgbXNnLCB3UGFy YW0sIGxQYXJhbSk7CiAgICAgICBzaWduYWxfdXNlcl9pbnB1dCAoKTsKQEAgLTU1OTcsNyAr NTc5MCwxMCBAQCAjZGVmaW5lIFdNX1RPVUNIIDU3NgogICAgICAgfQogCiAgICAgY2FzZSBX TV9FTUFDU19ERVNUUk9ZV0lORE9XOgorCVJldm9rZURyYWdEcm9wICgoSFdORCkgd1BhcmFt KTsKKyNpZiAwCiAgICAgICBEcmFnQWNjZXB0RmlsZXMgKChIV05EKSB3UGFyYW0sIEZBTFNF KTsKKyNlbmRpZgogICAgICAgcmV0dXJuIERlc3Ryb3lXaW5kb3cgKChIV05EKSB3UGFyYW0p OwogCiAgICAgY2FzZSBXTV9FTUFDU19ISURFX0NBUkVUOgpkaWZmIC0tZ2l0IGEvc3JjL3cz MnRlcm0uYyBiL3NyYy93MzJ0ZXJtLmMKaW5kZXggNjIwMzdlM2IyY2QuLmUxZmY0MTEyYTdi IDEwMDY0NAotLS0gYS9zcmMvdzMydGVybS5jCisrKyBiL3NyYy93MzJ0ZXJtLmMKQEAgLTM1 NzYsNiArMzU3Niw3IEBAIHczMl9jb25zdHJ1Y3RfbW91c2Vfd2hlZWwgKHN0cnVjdCBpbnB1 dF9ldmVudCAqcmVzdWx0LCBXMzJNc2cgKm1zZywKICAgcmV0dXJuIFFuaWw7CiB9CiAKKyNp ZiAwCiBzdGF0aWMgTGlzcF9PYmplY3QKIHczMl9jb25zdHJ1Y3RfZHJhZ19uX2Ryb3AgKHN0 cnVjdCBpbnB1dF9ldmVudCAqcmVzdWx0LCBXMzJNc2cgKm1zZywKICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHN0cnVjdCBmcmFtZSAqZikKQEAgLTM2NTEsNiArMzY1Miw3IEBAIHcz Ml9jb25zdHJ1Y3RfZHJhZ19uX2Ryb3AgKHN0cnVjdCBpbnB1dF9ldmVudCAqcmVzdWx0LCBX MzJNc2cgKm1zZywKICAgcmV0dXJuIFFuaWw7CiB9CiAKKyNlbmRpZgogDAogI2lmIEhBVkVf VzMyTk9USUZZCiAKQEAgLTU2ODIsMTIgKzU2ODQsNTYgQEAgdzMyX3JlYWRfc29ja2V0IChz dHJ1Y3QgdGVybWluYWwgKnRlcm1pbmFsLAogCSAgfQogCSAgYnJlYWs7CiAKKyNpZiAwCiAJ Y2FzZSBXTV9EUk9QRklMRVM6CiAJICBmID0gdzMyX3dpbmRvd190b19mcmFtZSAoZHB5aW5m bywgbXNnLm1zZy5od25kKTsKIAogCSAgaWYgKGYpCiAJICAgIHczMl9jb25zdHJ1Y3RfZHJh Z19uX2Ryb3AgKCZpbmV2LCAmbXNnLCBmKTsKIAkgIGJyZWFrOworI2VuZGlmCisKKwljYXNl IFdNX0VNQUNTX0RST1BTVFJJTkc6CisJICAgIGYgPSB3MzJfd2luZG93X3RvX2ZyYW1lIChk cHlpbmZvLCBtc2cubXNnLmh3bmQpOworCSAgICBpZiAoIWYpCisJICAgICAgYnJlYWs7CisJ ICAgIFhTRVRGUkFNRSAoaW5ldi5mcmFtZV9vcl93aW5kb3csIGYpOworCSAgICBpbmV2Lmtp bmQgPSBEUkFHX05fRFJPUF9FVkVOVDsKKwkgICAgaW5ldi5jb2RlID0gMDsKKwkgICAgaW5l di50aW1lc3RhbXAgPSBtc2cubXNnLnRpbWU7CisJICAgIGluZXYubW9kaWZpZXJzID0gbXNn LmR3TW9kaWZpZXJzOworCSAgICBTY3JlZW5Ub0NsaWVudCAobXNnLm1zZy5od25kLCAmbXNn Lm1zZy5wdCk7CisJICAgIFhTRVRJTlQgKGluZXYueCwgbXNnLm1zZy5wdC54KTsKKwkgICAg WFNFVElOVCAoaW5ldi55LCBtc2cubXNnLnB0LnkpOworCSAgICBpbmV2LmFyZyA9IG1ha2Vf c3RyaW5nICgoY2hhciopbXNnLm1zZy5sUGFyYW0sIHN0cmxlbigoY2hhciopbXNnLm1zZy5s UGFyYW0pKTsKKwkgICAgeGZyZWUgKCh2b2lkKiltc2cubXNnLmxQYXJhbSk7CisJICAgIGJy ZWFrOworCisJY2FzZSBXTV9FTUFDU19EUk9QRklMRVM6CisJICB7CisJICAgIGYgPSB3MzJf d2luZG93X3RvX2ZyYW1lIChkcHlpbmZvLCBtc2cubXNnLmh3bmQpOworCSAgICBpZiAoIWYp CisJICAgICAgYnJlYWs7CisJICAgIFhTRVRGUkFNRSAoaW5ldi5mcmFtZV9vcl93aW5kb3cs IGYpOworCSAgICBpbmV2LmtpbmQgPSBEUkFHX05fRFJPUF9FVkVOVDsKKwkgICAgaW5ldi5j b2RlID0gMDsKKwkgICAgaW5ldi50aW1lc3RhbXAgPSBtc2cubXNnLnRpbWU7CisJICAgIGlu ZXYubW9kaWZpZXJzID0gbXNnLmR3TW9kaWZpZXJzOworCSAgICBTY3JlZW5Ub0NsaWVudCAo bXNnLm1zZy5od25kLCAmbXNnLm1zZy5wdCk7CisJICAgIFhTRVRJTlQgKGluZXYueCwgbXNn Lm1zZy5wdC54KTsKKwkgICAgWFNFVElOVCAoaW5ldi55LCBtc2cubXNnLnB0LnkpOworCisJ ICAgIExpc3BfT2JqZWN0IGZpbGVzID0gUW5pbDsKKwkgICAgY2hhciAqKmZpbGVuYW1lcyA9 IChjaGFyKiopbXNnLm1zZy5sUGFyYW07CisJICAgIGZvciAoaW50IG4gPSAwOyBmaWxlbmFt ZXNbbl07IG4rKyApCisJICAgICAgeworCQlmaWxlcyA9IEZjb25zIChERUNPREVfRklMRSAo YnVpbGRfc3RyaW5nIChmaWxlbmFtZXNbbl0pKSwgZmlsZXMgKTsKKwkJeGZyZWUgKGZpbGVu YW1lc1tuXSk7CisJICAgICAgfQorCSAgICB4ZnJlZSAoZmlsZW5hbWVzKTsKKwkgICAgaW5l di5hcmcgPSBmaWxlczsKKwkgICAgYnJlYWs7CisJICB9CiAKIAljYXNlIFdNX0hTQ1JPTEw6 CiAJICB7CmRpZmYgLS1naXQgYS9zcmMvdzMydGVybS5oIGIvc3JjL3czMnRlcm0uaAppbmRl eCA0N2JlNTQyZjU3MC4uYzEyNTNhZjQ3YzQgMTAwNjQ0Ci0tLSBhL3NyYy93MzJ0ZXJtLmgK KysrIGIvc3JjL3czMnRlcm0uaApAQCAtNzEwLDcgKzcxMCw5IEBAICNkZWZpbmUgV01fRU1B Q1NfQlJJTkdUT1RPUCAgICAgICAgICAgIChXTV9FTUFDU19TVEFSVCArIDIzKQogI2RlZmlu ZSBXTV9FTUFDU19JTlBVVF9SRUFEWSAgICAgICAgICAgKFdNX0VNQUNTX1NUQVJUICsgMjQp CiAjZGVmaW5lIFdNX0VNQUNTX0ZJTEVOT1RJRlkgICAgICAgICAgICAoV01fRU1BQ1NfU1RB UlQgKyAyNSkKICNkZWZpbmUgV01fRU1BQ1NfSU1FX1NUQVRVUyAgICAgICAgICAgIChXTV9F TUFDU19TVEFSVCArIDI2KQotI2RlZmluZSBXTV9FTUFDU19FTkQgICAgICAgICAgICAgICAg ICAgKFdNX0VNQUNTX1NUQVJUICsgMjcpCisjZGVmaW5lIFdNX0VNQUNTX0RST1BGSUxFUyAg ICAgICAgICAgICAoV01fRU1BQ1NfU1RBUlQgKyAyNykKKyNkZWZpbmUgV01fRU1BQ1NfRFJP UFNUUklORyAgICAgICAgICAgIChXTV9FTUFDU19TVEFSVCArIDI4KQorI2RlZmluZSBXTV9F TUFDU19FTkQgICAgICAgICAgICAgICAgICAgKFdNX0VNQUNTX1NUQVJUICsgMjkpCiAKICNk ZWZpbmUgV05EX0ZPTlRXSURUSF9JTkRFWCAgICAoMCkKICNkZWZpbmUgV05EX0xJTkVIRUlH SFRfSU5ERVggICAoNCkKLS0gCjIuMzUuMS53aW5kb3dzLjIKCg== --------------bpXDjFiTX3F1gJwJnVP0JZE0-- From debbugs-submit-bounces@debbugs.gnu.org Sun Sep 29 03:20:36 2024 Received: (at 3468) by debbugs.gnu.org; 29 Sep 2024 07:20:36 +0000 Received: from localhost ([127.0.0.1]:37924 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1suoEM-0002nk-85 for submit@debbugs.gnu.org; Sun, 29 Sep 2024 03:20:36 -0400 Received: from eggs.gnu.org ([209.51.188.92]:42652) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1suoEJ-0002mm-OJ for 3468@debbugs.gnu.org; Sun, 29 Sep 2024 03:20:33 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1suoDi-0006sF-04; Sun, 29 Sep 2024 03:19:54 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=1j/5yWI6AVQ0M3WzOqg9XSbmk8oElsyN2ttq7cSJicM=; b=ccdfxGXXXsJ5 ECaVGEgIYI1d5+8HTOFLNVUQ4m/aOzm6dVBgfQJyGTPzYhKoVVdaGIgQlG1g6y2w+XE84gV4FkbX6 tPGB4cHuE1merjGUmZnlEGk7UD0ZhCmELpJpoW6DYJO8da+QyhValsZg+cQWweG1M04FgM/XylV9Q xC2++y6VdOFGAXmtwKS0NXNN6VYIbC3/KLRSb69QvfVc04VNGPWwSyBZ99JirNttSud7MCg9YqEX9 iPKo7DDhHxOOLmpjAV1z6NYi6tWwl1DyRRN2a+G7FC1ErGvtreSWS0l5OMxpefOLece3fBX+3elUn 342p10O3rNKu1zQcz5bYwg==; Date: Sun, 29 Sep 2024 10:19:48 +0300 Message-Id: <86wmiv3p0r.fsf@gnu.org> From: Eli Zaretskii To: Cecilio Pardo In-Reply-To: <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> (message from Cecilio Pardo on Sat, 28 Sep 2024 23:52:45 +0200) Subject: Re: bug#3468: drag and drop text References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 3468 Cc: 3468@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: -3.3 (---) > Date: Sat, 28 Sep 2024 23:52:45 +0200 > From: Cecilio Pardo > > This patch implements drag-and-drop for w32 for files and text, using C, > not C++. > This should work from Windows 95, but I can't test it. Because of this, > the prior implementation with WM_DROPFILES has been removed with '#if > 0', and can probably be completely removed. I think we should remove those "#if 0" parts, yes. If and when someone is able to test this on Windows 9X, they will report problems they encounter, and we can take it from there. The removed code is available in Git, so it is not lost. > Text is inserted at point position, not at drop position. I don't know > how this works on other platforms. Po Lu, any comments to this particular aspect? I have some comments to the code below. > Implement dnd with IDropTarget This should explicitly mention MS-Windows. > * lisp/term/w32-win.el (w32-drag-n-drop): changed to handle files or strings > * src/w32fns.c > (process_dropfiles): new, convert DROPFILES struct to array of strings > (w32_createwindow): assign an IDropTarget to each new frame > (w32_name_of_message): added new messages > (w32_msg_pump): Changed CoInitialize to OleInitialize, needed by the > drag-n-drop functions > (w32_wnd_proc): new struct w32_drop_target, and w32_drop_target_* > functions to implement the IDropTarget interface > * src/w32term.c (w32_read_socket): handle WM_EMACS_DROPFILES, > WM_EMACS_DROPSTRING, skip WM_EMACS_DROPFILES > * src/w32term.h (): add WM_EMACS_DROPFILES, WM_EMACS_DROPSTRING Some of these lines are too long (try limiting to 64 columns). Also, descriptions of changes should be complete sentences: start with a capital letter and end in a period, like this: (w32_createwindow): Assign an IDropTarget to each new frame. > (defun w32-drag-n-drop (event &optional new-frame) > - "Edit the files listed in the drag-n-drop EVENT. > -Switch to a buffer editing the last file dropped." > + "If the drag-n-drop EVENT is for a file or files, edit those > +files. Switch to a buffer editing the last file dropped. The first line of a doc string should be a single complete sentence. In this case, I suggest: Perform drag-n-drop action according to data in EVENT. If EVENT is for one or more files, visit those files in corresponding buffers, and switch to the buffer that visits the last dropped file. If EVENT is for text, insert that text at point into the buffer shown in the window that is the target of the drop; if that buffer is read-only, add the dropped text to kill-ring. If the optional argument NEW-FRAME is non-nil, perform the drag-n-drop action in a newly-created frame using its selected-window and that window's buffer. > + (if (stringp arg) > + (dnd-insert-text window 'copy arg) > + (dnd-handle-multiple-urls > + window > + (mapcar #'w32-dropped-file-to-url arg) > + 'private))))) Please add a comment here saying that the payload in the EVENT should be either a string (meaning the text to drop) or a list of strings (meaning names of files to drop). This is important because a file name is also a string, so it is not obvious how we distinguish between the two possible payloads. > +/* From the DROPFILES struct, extract the list of filenames. Returns a > + NULL terminated malloc array of malloc strings that should be freed ^^^^^^ ^^^^^^ "malloced" > +static char ** > +process_dropfiles (DROPFILES *files) > +{ > + char *start_of_files = (char*)files + files->pFiles; ^^^^^^^^^^^^ Style: "(char *) files". > + int count = 0; > + char filename[MAX_PATH]; ^^^^^^^^ This should be MAX_UTF8_PATH, since filename[] is UTF-8 encoded. > + if (files->fWide) What determines whether we get "wide" file names or ANSI file names? We want to get "wide" file names where possible, but I don't see where we request that? > + { > + WCHAR *p = (WCHAR*)start_of_files; ^^^^^^^^^^^^^^^^^^^^^^ "(WCHAR *) start_of_files". > + p = (WCHAR*)start_of_files; Likewise. > + for ( int i = 0; *p; p += wcslen (p) + 1, i++) ^^ Style: no space there. > + filenames = malloc ((count+1) * sizeof (char*)); You call malloc here, but the function which frees uses xfree. We should probably call xmalloc here, but xmalloc could signal an error, and this code runs in a non-main thread, doesn't it? If so, I think the function which frees needs to call 'free', nor 'xfree'. And we need to handle the case malloc returns NULL. > + filenames [i] = xstrdup (filename); For the same reason, we cannot call xstrdup here, and neither can we call strdup (because it comes from MSVCRT, and will call a different version of malloc). We need to provide a private version of strdup. But see below about moving all this processing to the main thread. Also, "filenames[i]", without the space before the brackets. > + struct w32_drop_target *target = (struct w32_drop_target *)This; > + xfree( target->i_drop_target.lpVtbl ); > + xfree( target ); ^^^^ Style: missing and extra space again. > +static HRESULT STDMETHODCALLTYPE > +w32_drop_target_DragEnter( IDropTarget *This, IDataObject *pDataObj, DWORD grfKeyState, POINTL pt, DWORD *pdwEffect) Please break this long list of arguments into several lines. Also, our style is to write w32_drop_target_DragEnter (IDropTarget *This, That is, one space between the function name and the opening parenthesis, and no space between the parenthesis and the first argument. > +static HRESULT STDMETHODCALLTYPE > +w32_drop_target_DragOver ( IDropTarget *This, DWORD grfKeyState, POINTL pt, DWORD *pdwEffect) Likewise here (and elsewhere in the patch). > + formatetc.cfFormat = CF_UNICODETEXT; > + if (SUCCEEDED (IDataObject_GetData (pDataObj, &formatetc, &stgmedium))) > + { > + if (stgmedium.tymed == TYMED_HGLOBAL) > + { > + WCHAR *text = (WCHAR*)GlobalLock (stgmedium.hGlobal); > + Lisp_Object text_string = from_unicode_buffer (text); > + char *utf8 = xstrdup (SSDATA (ENCODE_UTF_8 (text_string))); > + my_post_msg (&msg, target->hwnd, WM_EMACS_DROPSTRING, > + 0, (LPARAM)utf8 ); > + GlobalUnlock (stgmedium.hGlobal); > + } > + ReleaseStgMedium (&stgmedium); > + return S_OK; > + } If this runs in a non-main thread, then we cannot do this: calling functions that manipulate Lisp data in non-main threads is a no-no. Can we instead delegate the actual processing to where WM_EMACS_DROPSTRING is processed? If not, why not? To tell the truth, I'd be happier if we could do the same with WM_EMACS_DROPFILES, i.e. convert the file names and allocate memory for them in the main thread: that would remove all the issues mentioned above with xmalloc, xstrdup, etc., and be in general much safer. Also, there's no need to call ENCODE_UTF_8, since from_unicode_buffer already returns the text in the internal representation. You are basically decoding strings from UTF-16, then encode them in UTF-8, only to decode them again in the main thread. (This will also be avoided if we do everything in the main thread.) > + formatetc.cfFormat = CF_TEXT; > + if (SUCCEEDED (IDataObject_GetData (pDataObj, &formatetc, &stgmedium))) > + { > + if (stgmedium.tymed == TYMED_HGLOBAL) > + { > + char *text = (char*)GlobalLock (stgmedium.hGlobal); > + > + int l = strlen (text); > + WCHAR *text_utf16 = xmalloc (sizeof (WCHAR) * l + 1 );; > + if (MultiByteToWideChar (CP_ACP, 0, text, l, text_utf16, l + 1)) We cannot call MultiByteToWideChar directly: it will prevent Emacs from running on Windows 9X, where that function is available only after loading a special DLL. We need to call this function via a function pointer, pMultiByteToWideChar. > + { > + Lisp_Object text_string = from_unicode_buffer (text_utf16); > + char *utf8 = xstrdup (SSDATA (ENCODE_UTF_8 (text_string))); > + my_post_msg (&msg, target->hwnd, WM_EMACS_DROPSTRING, > + 0, (LPARAM)utf8 ); This is a very convoluted way of converting ANSI encoded string to UTF-8. I would simply use DECODE_SYSTEM here (subject to the same restriction regarding doing that in a non-main thread). > @@ -2548,7 +2720,23 @@ w32_createwindow (struct frame *f, int *coords) > SetWindowLong (hwnd, WND_BACKGROUND_INDEX, FRAME_BACKGROUND_PIXEL (f)); > > /* Enable drag-n-drop. */ > + struct w32_drop_target *drop_target = xmalloc (sizeof (struct w32_drop_target)); > + drop_target-> hwnd = hwnd; > + > + IDropTargetVtbl *vtbl = xmalloc (sizeof (IDropTargetVtbl)); ^^^^^^^ w32_createwindow runs in the input thread, so it cannot safely call xmalloc. > case WM_EMACS_CREATEWINDOW: > - /* Initialize COM for this window. Even though we don't use it, > - some third party shell extensions can cause it to be used in > + /* Initialize COM for this window. Needed for RegisterDragDrop. ^^ Two spaces between sentences, please. > + case WM_EMACS_DROPSTRING: > + f = w32_window_to_frame (dpyinfo, msg.msg.hwnd); > + if (!f) > + break; > + XSETFRAME (inev.frame_or_window, f); > + inev.kind = DRAG_N_DROP_EVENT; > + inev.code = 0; > + inev.timestamp = msg.msg.time; > + inev.modifiers = msg.dwModifiers; > + ScreenToClient (msg.msg.hwnd, &msg.msg.pt); > + XSETINT (inev.x, msg.msg.pt.x); > + XSETINT (inev.y, msg.msg.pt.y); > + inev.arg = make_string ((char*)msg.msg.lParam, strlen((char*)msg.msg.lParam)); Since we are (hopefully) going to move the prcessing and decoding of the dropped string to this place, just decoding it from UTF-18 or ANSI (via DECODE_SYSTEM) should be enough. > + xfree ((void*)msg.msg.lParam); This may need to be 'free', see above. > + case WM_EMACS_DROPFILES: > + { > + f = w32_window_to_frame (dpyinfo, msg.msg.hwnd); > + if (!f) > + break; > + XSETFRAME (inev.frame_or_window, f); > + inev.kind = DRAG_N_DROP_EVENT; > + inev.code = 0; > + inev.timestamp = msg.msg.time; > + inev.modifiers = msg.dwModifiers; > + ScreenToClient (msg.msg.hwnd, &msg.msg.pt); > + XSETINT (inev.x, msg.msg.pt.x); > + XSETINT (inev.y, msg.msg.pt.y); > + > + Lisp_Object files = Qnil; > + char **filenames = (char**)msg.msg.lParam; > + for (int n = 0; filenames[n]; n++ ) > + { > + files = Fcons (DECODE_FILE (build_string (filenames[n])), files ); > + xfree (filenames[n]); > + } > + xfree (filenames); Similarly here. Finally, we need a NEWS entry (near the end of NEWS) announcing this new capability. Thanks! From debbugs-submit-bounces@debbugs.gnu.org Sun Sep 29 07:18:08 2024 Received: (at 3468) by debbugs.gnu.org; 29 Sep 2024 11:18:08 +0000 Received: from localhost ([127.0.0.1]:40167 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1surwG-0004lz-2U for submit@debbugs.gnu.org; Sun, 29 Sep 2024 07:18:08 -0400 Received: from mail.imayhem.com ([82.223.54.191]:38933 helo=zealous-pike.82-223-54-191.plesk.page) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1surwE-0004lP-0w for 3468@debbugs.gnu.org; Sun, 29 Sep 2024 07:18:07 -0400 Received: from [192.168.68.105] (111.red-88-21-7.staticip.rima-tde.net [88.21.7.111]) by zealous-pike.82-223-54-191.plesk.page (Postfix) with ESMTPSA id B6D8B800F0; Sun, 29 Sep 2024 11:17:28 +0000 (UTC) Authentication-Results: zealous-pike.82-223-54-191.plesk.page; spf=pass (sender IP is 88.21.7.111) smtp.mailfrom=cpardo@imayhem.com smtp.helo=[192.168.68.105] Received-SPF: pass (zealous-pike.82-223-54-191.plesk.page: connection is authenticated) Message-ID: <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> Date: Sun, 29 Sep 2024 13:17:26 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#3468: drag and drop text To: Eli Zaretskii References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> Content-Language: es-ES From: Cecilio Pardo In-Reply-To: <86wmiv3p0r.fsf@gnu.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 3468 Cc: 3468@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 (-) On 29/09/2024 9:19, Eli Zaretskii wrote: >> + if (files->fWide) > > What determines whether we get "wide" file names or ANSI file names? > We want to get "wide" file names where possible, but I don't see where > we request that? We can't request it, I suppose it depends on the OS version or the program sending the drop. > If this runs in a non-main thread, then we cannot do this: calling > functions that manipulate Lisp data in non-main threads is a no-no. > Can we instead delegate the actual processing to where > WM_EMACS_DROPSTRING is processed? If not, why not? It runs indeed on the "shell thread". I'll move all the processing to the message handler. Thanks a lot for your review, and sorry for all the style mistakes. From debbugs-submit-bounces@debbugs.gnu.org Sun Sep 29 07:37:25 2024 Received: (at 3468) by debbugs.gnu.org; 29 Sep 2024 11:37:25 +0000 Received: from localhost ([127.0.0.1]:40191 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1susEu-0007XQ-NT for submit@debbugs.gnu.org; Sun, 29 Sep 2024 07:37:25 -0400 Received: from eggs.gnu.org ([209.51.188.92]:34326) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1susEo-0007X3-Fj for 3468@debbugs.gnu.org; Sun, 29 Sep 2024 07:37:22 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1susED-0001Dd-Ot; Sun, 29 Sep 2024 07:36:41 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=jk3Y1TfjTv7ZKnxXgwW9ufSPF9Wyh/d97mdVYaYp+AQ=; b=bCgOJg7gwASr FM5QjSokB28x1wFj9emxBZx8CKf0igoZ/tx6q6PXU4SMOrVFRENdH5tfED4/jpfpKAfQ7ZTgTIY2y b69qxCLVrdoC05fyu3Rb5pdAFdqijYI5+zD7pHaicOX2YUbRSFjYIR7foa/NkvyKS+JPkzB1SWJu0 DpcuQu7MajwgHtaGwA0amWoCrVYfJvdcqobOKKSkx9HtNKPEyt9QNOnUQWhgmHeS5pBL3oMxhi4FW lfNz47Ao/pdZR+T6rkk90jTpjt0Jgduq9BCI+87dXZMXfae42Jv7DZo8dGhPU9UsrX2A7T11rrHph gyZ2CGoyYbELev1KlOtHSQ==; Date: Sun, 29 Sep 2024 14:36:38 +0300 Message-Id: <86msjq4rp5.fsf@gnu.org> From: Eli Zaretskii To: Cecilio Pardo In-Reply-To: <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> (message from Cecilio Pardo on Sun, 29 Sep 2024 13:17:26 +0200) Subject: Re: bug#3468: drag and drop text References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 3468 Cc: 3468@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 (-) > Date: Sun, 29 Sep 2024 13:17:26 +0200 > Cc: 3468@debbugs.gnu.org > From: Cecilio Pardo > > On 29/09/2024 9:19, Eli Zaretskii wrote: > > >> + if (files->fWide) > > > > What determines whether we get "wide" file names or ANSI file names? > > We want to get "wide" file names where possible, but I don't see where > > we request that? > > We can't request it, I suppose it depends on the OS version or the > program sending the drop. What did you see on Windows 11? Do we always receive "wide" file names? Did you try dragging file names whose characters are not supported by the current ANSI codepage, and if so, did it work? > > If this runs in a non-main thread, then we cannot do this: calling > > functions that manipulate Lisp data in non-main threads is a no-no. > > Can we instead delegate the actual processing to where > > WM_EMACS_DROPSTRING is processed? If not, why not? > > It runs indeed on the "shell thread". I'll move all the processing to > the message handler. Thanks. By "message handler" you mean w32_read_socket, yes? > Thanks a lot for your review, and sorry for all the style mistakes. No need to apologize, it takes time to learn the subtleties of our conventions. From debbugs-submit-bounces@debbugs.gnu.org Sun Sep 29 07:46:38 2024 Received: (at 3468) by debbugs.gnu.org; 29 Sep 2024 11:46:38 +0000 Received: from localhost ([127.0.0.1]:40196 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1susNq-0000mi-6Q for submit@debbugs.gnu.org; Sun, 29 Sep 2024 07:46:38 -0400 Received: from mail.imayhem.com ([82.223.54.191]:53543 helo=zealous-pike.82-223-54-191.plesk.page) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1susNk-0000ls-GI for 3468@debbugs.gnu.org; Sun, 29 Sep 2024 07:46:36 -0400 Received: from [192.168.68.105] (111.red-88-21-7.staticip.rima-tde.net [88.21.7.111]) by zealous-pike.82-223-54-191.plesk.page (Postfix) with ESMTPSA id 1BD1C800F0; Sun, 29 Sep 2024 11:45:55 +0000 (UTC) Authentication-Results: zealous-pike.82-223-54-191.plesk.page; spf=pass (sender IP is 88.21.7.111) smtp.mailfrom=cpardo@imayhem.com smtp.helo=[192.168.68.105] Received-SPF: pass (zealous-pike.82-223-54-191.plesk.page: connection is authenticated) Message-ID: <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> Date: Sun, 29 Sep 2024 13:45:52 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#3468: drag and drop text To: Eli Zaretskii References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> Content-Language: es-ES From: Cecilio Pardo In-Reply-To: <86msjq4rp5.fsf@gnu.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 3468 Cc: 3468@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 (-) On 29/09/2024 13:36, Eli Zaretskii wrote: > What did you see on Windows 11? Do we always receive "wide" file > names? Yes, always wide on Windows 11 on my tests. > Did you try dragging file names whose characters are not supported by > the current ANSI codepage, and if so, did it work? I just tried and it works fine. >> It runs indeed on the "shell thread". I'll move all the processing to >> the message handler. > > Thanks. By "message handler" you mean w32_read_socket, yes? Yes. From debbugs-submit-bounces@debbugs.gnu.org Mon Sep 30 17:21:20 2024 Received: (at 3468) by debbugs.gnu.org; 30 Sep 2024 21:21:20 +0000 Received: from localhost ([127.0.0.1]:47221 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1svNpX-0007UN-Gl for submit@debbugs.gnu.org; Mon, 30 Sep 2024 17:21:20 -0400 Received: from mail.imayhem.com ([82.223.54.191]:51383 helo=zealous-pike.82-223-54-191.plesk.page) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1svNpU-0007UF-3O for 3468@debbugs.gnu.org; Mon, 30 Sep 2024 17:21:18 -0400 Received: from [192.168.68.105] (111.red-88-21-7.staticip.rima-tde.net [88.21.7.111]) by zealous-pike.82-223-54-191.plesk.page (Postfix) with ESMTPSA id C0496800F4; Mon, 30 Sep 2024 21:20:35 +0000 (UTC) Authentication-Results: zealous-pike.82-223-54-191.plesk.page; spf=pass (sender IP is 88.21.7.111) smtp.mailfrom=cpardo@imayhem.com smtp.helo=[192.168.68.105] Received-SPF: pass (zealous-pike.82-223-54-191.plesk.page: connection is authenticated) Content-Type: multipart/mixed; boundary="------------IMNsYWjK50U0KmTAHEpGC9Ot" Message-ID: Date: Mon, 30 Sep 2024 23:20:32 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#3468: drag and drop text From: Cecilio Pardo To: Eli Zaretskii References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> Content-Language: es-ES In-Reply-To: <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 3468 Cc: 3468@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 (-) This is a multi-part message in MIME format. --------------IMNsYWjK50U0KmTAHEpGC9Ot Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Here is the reworked version. Now the processing of the drop data is delayed until we process the WM_EMACS_DROP message at w32_read_socket. There is no malloc/strdup. --------------IMNsYWjK50U0KmTAHEpGC9Ot Content-Type: text/plain; charset=UTF-8; name="0001-Implement-drag-n-drop-for-w32-with-support-for-files.patch" Content-Disposition: attachment; filename*0="0001-Implement-drag-n-drop-for-w32-with-support-for-files.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSBjMjBlOGUzZTQ4ODBlYjY1MjU3MDIwZWU4ODI5OGY1Njk3YjFkZmMzIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBDZWNpbGlvIFBhcmRvIDxjcGFyZG9AaW1heWhlbS5j b20+CkRhdGU6IEZyaSwgMjcgU2VwIDIwMjQgMjM6NTg6MDIgKzAyMDAKU3ViamVjdDogW1BB VENIXSBJbXBsZW1lbnQgZHJhZy1uLWRyb3AgZm9yIHczMiB3aXRoIHN1cHBvcnQgZm9yIGZp bGVzIGFuZCB0ZXh0CgpJbXBsZW1lbnQgZHJhZy1uLWRyb3Agd2l0aCBJRHJvcFRhcmdldCBm b3IgTVMtV2luZG93cy4gVGhpcwphbGxvd3MgZm9yIGRyb3BwaW5nIGZpbGVzIG9yIHRleHQu CgoqIGxpc3AvdGVybS93MzItd2luLmVsICh3MzItZHJhZy1uLWRyb3ApOiBDaGFuZ2VkIHRv IGhhbmRsZQpmaWxlcyBvciBzdHJpbmdzLgoqIHNyYy93MzJmbnMuYyAocHJvY2Vzc19kcm9w ZmlsZXMpOiBOZXcgZnVuY3Rpb24gdG8gY29udmVydApEUk9QRklMRVMgc3RydWN0IHRvIGFy cmF5IG9mIHN0cmluZ3MuCih3MzJfcHJvY2Vzc19kbmRfZGF0YSk6IE5ldyBmdW5jdGlvbiB0 byBwcm9jZXNzIGRyb3AgZGF0YS4KKHczMl90cnlfZ2V0X2RhdGEpOiBFeHRyYWN0IGRhdGEg ZnJvbSBJRGF0YU9iamVjdC4KKHczMl9jcmVhdGV3aW5kb3cpOiBBc3NpZ24gYW4gSURyb3BU YXJnZXQgdG8gZWFjaCBuZXcgZnJhbWUuCih3MzJfbmFtZV9vZl9tZXNzYWdlKTogQWRkZWQg bmV3IG1lc3NhZ2UuCih3MzJfbXNnX3B1bXApOiBDaGFuZ2VkIENvSW5pdGlhbGl6ZSB0byBP bGVJbml0aWFsaXplLCBuZWVkZWQKYnkgdGhlIGRyYWctbi1kcm9wIGZ1bmN0aW9ucy4KKHcz Ml93bmRfcHJvYyk6IE5ldyBzdHJ1Y3QgdzMyX2Ryb3BfdGFyZ2V0LCBhbmQKdzMyX2Ryb3Bf dGFyZ2V0XyogZnVuY3Rpb25zIHRvIGltcGxlbWVudCB0aGUgSURyb3BUYXJnZXQKaW50ZXJm YWNlLgoqIHNyYy93MzJ0ZXJtLmMgKHczMl9yZWFkX3NvY2tldCk6IEhhbmRsZSBXTV9FTUFD U19EUk9QIGFuZApyZW1vdmUgV01fRU1BQ1NfRFJPUEZJTEVTLgoqIHNyYy93MzJ0ZXJtLmgg KCk6IEFkZGVkIG5ldyBtZXNzYWdlIFdNX0VNQUNTX0RST1AuCgouLgotLS0KIGV0Yy9ORVdT ICAgICAgICAgICAgIHwgICA1ICsrCiBsaXNwL3Rlcm0vdzMyLXdpbi5lbCB8ICAyNSArKysr LS0KIHNyYy93MzJmbnMuYyAgICAgICAgIHwgMjAzICsrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrLS0KIHNyYy93MzJ0ZXJtLmMgICAgICAgIHwgIDk4ICsrKyst LS0tLS0tLS0tLS0tLS0tLQogc3JjL3czMnRlcm0uaCAgICAgICAgfCAgIDQgKy0KIDUgZmls ZXMgY2hhbmdlZCwgMjQyIGluc2VydGlvbnMoKyksIDkzIGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL2V0Yy9ORVdTIGIvZXRjL05FV1MKaW5kZXggMzc1NjhmZmRiZWEuLjdjOWY2ZjU1 OWVjIDEwMDY0NAotLS0gYS9ldGMvTkVXUworKysgYi9ldGMvTkVXUwpAQCAtNTg0LDYgKzU4 NCwxMSBAQCBJbiBwYXJ0aWN1bGFyLCBpdCBpcyBub3cgcG9zc2libGUgdG8gc2hvdyB0ZXh0 IHdpdGggZW1iZWRkZWQgbmV3bGluZXMgaW4KIGEgZGlhbG9nIHBvcHBlZCBieSAnbWVzc2Fn ZS1ib3gnLiAgVGhpcyBpcyBzdXBwb3J0ZWQgb24gV2luZG93cyBWaXN0YQogYW5kIGxhdGVy IHZlcnNpb25zLgogCistLS0KKyoqIEVtYWNzIG9uIE1TLVdpbmRvd3Mgbm93IHN1cHBvcnRz IGRyYWctbi1kcm9wIG9mIHRleHQgaW50byBhIGJ1ZmZlci4KK1RoaXMgaXMgaW4gYWRkaXRp b24gdG8gZHJhZy1uLWRyb3Agb2YgZmlsZXMsIHRoYXQgd2FzIGFscmVhZHkgc3VwcG9ydGVk LgorCisKIAwKIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBF bWFjcy4KZGlmZiAtLWdpdCBhL2xpc3AvdGVybS93MzItd2luLmVsIGIvbGlzcC90ZXJtL3cz Mi13aW4uZWwKaW5kZXggYjU3YjNkZDNiZWYuLjU0MWZlZjJjZWQzIDEwMDY0NAotLS0gYS9s aXNwL3Rlcm0vdzMyLXdpbi5lbAorKysgYi9saXNwL3Rlcm0vdzMyLXdpbi5lbApAQCAtMTMx LDggKzEzMSwxNSBAQCB3MzItZHJvcHBlZC1maWxlLXRvLXVybAogICAgZmlsZS1uYW1lKSkK IAogKGRlZnVuIHczMi1kcmFnLW4tZHJvcCAoZXZlbnQgJm9wdGlvbmFsIG5ldy1mcmFtZSkK LSAgIkVkaXQgdGhlIGZpbGVzIGxpc3RlZCBpbiB0aGUgZHJhZy1uLWRyb3AgRVZFTlQuCi1T d2l0Y2ggdG8gYSBidWZmZXIgZWRpdGluZyB0aGUgbGFzdCBmaWxlIGRyb3BwZWQuIgorICAi UGVyZm9ybSBkcmFnLW4tZHJvcCBhY3Rpb24gYWNjb3JkaW5nIHRvIGRhdGEgaW4gRVZFTlQu CitJZiBFVkVOVCBpcyBmb3Igb25lIG9yIG1vcmUgZmlsZXMsIHZpc2l0IHRob3NlIGZpbGVz IGluIGNvcnJlc3BvbmRpbmcKK2J1ZmZlcnMsIGFuZCBzd2l0Y2ggdG8gdGhlIGJ1ZmZlciB0 aGF0IHZpc2l0cyB0aGUgbGFzdCBkcm9wcGVkIGZpbGUuCitJZiBFVkVOVCBpcyBmb3IgdGV4 dCwgaW5zZXJ0IHRoYXQgdGV4dCBhdCBwb2ludCBpbnRvIHRoZSBidWZmZXIKK3Nob3duIGlu IHRoZSB3aW5kb3cgdGhhdCBpcyB0aGUgdGFyZ2V0IG9mIHRoZSBkcm9wOyBpZiB0aGF0IGJ1 ZmZlciBpcworcmVhZC1vbmx5LCBhZGQgdGhlIGRyb3BwZWQgdGV4dCB0byBraWxsLXJpbmcu CitJZiB0aGUgb3B0aW9uYWwgYXJndW1lbnQgTkVXLUZSQU1FIGlzIG5vbi1uaWwsIHBlcmZv cm0gdGhlCitkcmFnLW4tZHJvcCBhY3Rpb24gaW4gYSBuZXdseS1jcmVhdGVkIGZyYW1lIHVz aW5nIGl0cyBzZWxlY3RlZC13aW5kb3cKK2FuZCB0aGF0IHdpbmRvdydzIGJ1ZmZlci4iCiAg IChpbnRlcmFjdGl2ZSAiZSIpCiAgIChzYXZlLWV4Y3Vyc2lvbgogICAgIDs7IE1ha2Ugc3Vy ZSB0aGUgZHJvcCB0YXJnZXQgaGFzIHBvc2l0aXZlIGNvLW9yZHMKQEAgLTE0MCw2ICsxNDcs NyBAQCB3MzItZHJhZy1uLWRyb3AKICAgICA7OyB3b24ndCB3b3JrLiAgPHNreEB0YXJkaXMu ZWQuYWMudWs+CiAgICAgKGxldCogKCh3aW5kb3cgKHBvc24td2luZG93IChldmVudC1zdGFy dCBldmVudCkpKQogCSAgIChjb29yZHMgKHBvc24teC15IChldmVudC1zdGFydCBldmVudCkp KQorICAgICAgICAgICAoYXJnIChjYXIgKGNkciAoY2RyIGV2ZW50KSkpKQogCSAgICh4IChj YXIgY29vcmRzKSkKIAkgICAoeSAoY2RyIGNvb3JkcykpKQogICAgICAgKGlmIChhbmQgKD4g eCAwKSAoPiB5IDApKQpAQCAtMTUwLDExICsxNTgsMTQgQEAgdzMyLWRyYWctbi1kcm9wCiAg ICAgICAocmFpc2UtZnJhbWUpCiAgICAgICAoc2V0cSB3aW5kb3cgKHNlbGVjdGVkLXdpbmRv dykpCiAKLSAgICAgIChkbmQtaGFuZGxlLW11bHRpcGxlLXVybHMKLSAgICAgICB3aW5kb3cK LSAgICAgICAobWFwY2FyICMndzMyLWRyb3BwZWQtZmlsZS10by11cmwKLSAgICAgICAgICAg ICAgIChjYXIgKGNkciAoY2RyIGV2ZW50KSkpKQotICAgICAgICdwcml2YXRlKSkpKQorICAg ICAgOzsgYXJnICh0aGUgcGF5bG9hZCBvZiB0aGUgZXZlbnQpIGlzIGEgc3RyaW5nIHdoZW4g dGhlIGRyb3AgaXMKKyAgICAgIDs7IHRleHQsIGFuZCBhIGxpc3Qgb2Ygc3RyaW5ncyB3aGVu IHRoZSBkcm9wIGlzIG9uZSBvciBtb3JlIGZpbGVzLgorICAgICAgKGlmIChzdHJpbmdwIGFy ZykKKyAgICAgICAgICAoZG5kLWluc2VydC10ZXh0IHdpbmRvdyAnY29weSBhcmcpCisgICAg ICAgIChkbmQtaGFuZGxlLW11bHRpcGxlLXVybHMKKyAgICAgICAgIHdpbmRvdworICAgICAg ICAgKG1hcGNhciAjJ3czMi1kcm9wcGVkLWZpbGUtdG8tdXJsIGFyZykKKyAgICAgICAgICdw cml2YXRlKSkpKSkKIAogKGRlZnVuIHczMi1kcmFnLW4tZHJvcC1vdGhlci1mcmFtZSAoZXZl bnQpCiAgICJFZGl0IHRoZSBmaWxlcyBsaXN0ZWQgaW4gdGhlIGRyYWctbi1kcm9wIEVWRU5U LCBpbiBvdGhlciBmcmFtZXMuCmRpZmYgLS1naXQgYS9zcmMvdzMyZm5zLmMgYi9zcmMvdzMy Zm5zLmMKaW5kZXggMGEzZjVjMzhhNTguLmRjNjlhMzk4MDE5IDEwMDY0NAotLS0gYS9zcmMv dzMyZm5zLmMKKysrIGIvc3JjL3czMmZucy5jCkBAIC0zNCw2ICszNCwxMiBAQCAjZGVmaW5l IF9XSU4zMl9XSU5OVCAweDA2MDAKIAogI2luY2x1ZGUgPGMtY3R5cGUuaD4KIAorI2RlZmlu ZSBDT0JKTUFDUk9TIC8qIEFzayBmb3IgQyBkZWZpbml0aW9ucyBmb3IgQ09NLiAgKi8KKyNp bmNsdWRlIDxzaGxvYmouaD4KKyNpbmNsdWRlIDxvbGVpZGwuaD4KKyNpbmNsdWRlIDxvYmpp ZGwuaD4KKyNpbmNsdWRlIDxvbGUyLmg+CisKICNpbmNsdWRlICJsaXNwLmgiCiAjaW5jbHVk ZSAidzMydGVybS5oIgogI2luY2x1ZGUgImZyYW1lLmgiCkBAIC0zNTksNiArMzY1LDkgQEAg I2RlZmluZSBXU19FWF9OT0FDVElWQVRFIDB4MDgwMDAwMDBMCiAKIHN0YXRpYyBzdHJ1Y3Qg dzMyX2Rpc3BsYXlfaW5mbyAqdzMyX2Rpc3BsYXlfaW5mb19mb3JfbmFtZSAoTGlzcF9PYmpl Y3QpOwogCitzdGF0aWMgdm9pZCBteV9wb3N0X21zZyAoVzMyTXNnKiwgSFdORCwgVUlOVCwg V1BBUkFNLCBMUEFSQU0pOworc3RhdGljIHVuc2lnbmVkIGludCB3MzJfZ2V0X21vZGlmaWVy cyAodm9pZCk7CisKIC8qIExldCB0aGUgdXNlciBzcGVjaWZ5IGEgZGlzcGxheSB3aXRoIGEg ZnJhbWUuCiAgICBuaWwgc3RhbmRzIGZvciB0aGUgc2VsZWN0ZWQgZnJhbWUtLW9yLCBpZiB0 aGF0IGlzIG5vdCBhIHczMiBmcmFtZSwKICAgIHRoZSBmaXJzdCBkaXNwbGF5IG9uIHRoZSBs aXN0LiAgKi8KQEAgLTI0NjQsNiArMjQ3MywxNzQgQEAgdzMyX2NyZWF0ZWhzY3JvbGxiYXIg KHN0cnVjdCBmcmFtZSAqZiwgc3RydWN0IHNjcm9sbF9iYXIgKiBiYXIpCiAgIHJldHVybiBo d25kOwogfQogCisvKiBGcm9tIHRoZSBEUk9QRklMRVMgc3RydWN0LCBleHRyYWN0IHRoZSBm aWxlbmFtZXMgYW5kIHJldHVybiBhcyBhIGxpc3QKKyAgIG9mIHN0cmluZ3MuICAqLworc3Rh dGljIExpc3BfT2JqZWN0Citwcm9jZXNzX2Ryb3BmaWxlcyAoRFJPUEZJTEVTICpmaWxlcykK K3sKKyAgY2hhciAqc3RhcnRfb2ZfZmlsZXMgPSAoY2hhciAqKSBmaWxlcyArIGZpbGVzLT5w RmlsZXM7CisgIGNoYXIgZmlsZW5hbWVbTUFYX1VURjhfUEFUSF07CisgIExpc3BfT2JqZWN0 IGxpc3BfZmlsZXMgPSBRbmlsOworCisgIGlmIChmaWxlcy0+ZldpZGUpCisgICAgeworICAg ICAgV0NIQVIgKnAgPSAoV0NIQVIgKikgc3RhcnRfb2ZfZmlsZXM7CisgICAgICBmb3IgKDsg KnA7IHAgKz0gd2NzbGVuIChwKSArIDEpCisJeworCSAgZmlsZW5hbWVfZnJvbV91dGYxNihw LCBmaWxlbmFtZSk7CisJICBsaXNwX2ZpbGVzID0gRmNvbnMgKERFQ09ERV9GSUxFIChidWls ZF9zdHJpbmcgKGZpbGVuYW1lKSksCisJCQkgICAgICBsaXNwX2ZpbGVzICk7CisJfQorICAg IH0KKyAgZWxzZQorICAgIHsKKyAgICAgIGNoYXIgKnAgPSBzdGFydF9vZl9maWxlczsKKyAg ICAgIGZvciAoOyAqcDsgcCArPSBzdHJsZW4ocCkgKyAxKQorCXsKKwkgIGZpbGVuYW1lX2Zy b21fYW5zaSAocCwgZmlsZW5hbWUpOworCSAgbGlzcF9maWxlcyA9IEZjb25zIChERUNPREVf RklMRSAoYnVpbGRfc3RyaW5nIChmaWxlbmFtZSkpLAorCQkJICAgICAgbGlzcF9maWxlcyAp OworCX0KKyAgICB9CisgIHJldHVybiBsaXNwX2ZpbGVzOworfQorCitMaXNwX09iamVjdAor dzMyX3Byb2Nlc3NfZG5kX2RhdGEgKGludCBmb3JtYXQsIHZvaWQgKmhHbG9iYWwpCit7Cisg IExpc3BfT2JqZWN0IHJlc3VsdCA9IFFuaWw7CisgIEhHTE9CQUwgaGcgPSAoSEdMT0JBTCkg aEdsb2JhbDsKKworICBzd2l0Y2ggKGZvcm1hdCkKKyAgICB7CisgICAgY2FzZSBDRl9IRFJP UDoKKyAgICAgIHsKKwlEUk9QRklMRVMgKmZpbGVzID0gKERST1BGSUxFUyAqKSBHbG9iYWxM b2NrIChoZyk7CisJaWYgKGZpbGVzKQorCSAgcmVzdWx0ID0gcHJvY2Vzc19kcm9wZmlsZXMg KGZpbGVzKTsKKwlHbG9iYWxVbmxvY2sgKGhnKTsKKwlicmVhazsKKyAgICAgIH0KKyAgICBj YXNlIENGX1VOSUNPREVURVhUOgorICAgICAgeworCVdDSEFSICp0ZXh0ID0gKFdDSEFSICop IEdsb2JhbExvY2sgKGhnKTsKKwlyZXN1bHQgPSBmcm9tX3VuaWNvZGVfYnVmZmVyICh0ZXh0 KTsKKwlHbG9iYWxVbmxvY2sgKGhnKTsKKwlicmVhazsKKyAgICAgIH0KKyAgICBjYXNlIENG X1RFWFQ6CisgICAgICB7CisJY2hhciAqdGV4dCA9IChjaGFyICopIEdsb2JhbExvY2sgKGhn KTsKKwlyZXN1bHQgPSBERUNPREVfU1lTVEVNIChidWlsZF91bmlieXRlX3N0cmluZyAodGV4 dCkpOworCUdsb2JhbFVubG9jayAoaGcpOworCWJyZWFrOworICAgICAgfQorICAgIH0KKwor ICBHbG9iYWxGcmVlIChoZyk7CisKKyAgcmV0dXJuIHJlc3VsdDsKK30KKworc3RydWN0IHcz Ml9kcm9wX3RhcmdldCB7CisgIC8qIGlfZHJvcF90YXJnZXQgbXVzdCBiZSB0aGUgZmlyc3Qg bWVtYmVyLiAgKi8KKyAgSURyb3BUYXJnZXQgaV9kcm9wX3RhcmdldDsKKyAgSFdORCBod25k OworfTsKKworc3RhdGljIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUKK3czMl9kcm9wX3Rh cmdldF9RdWVyeUludGVyZmFjZSAoSURyb3BUYXJnZXQgKnQsIFJFRklJRCByaSwgdm9pZCAq KnIpCit7CisgIHJldHVybiBFX05PSU5URVJGQUNFOworfQorCitzdGF0aWMgVUxPTkcgU1RE TUVUSE9EQ0FMTFRZUEUKK3czMl9kcm9wX3RhcmdldF9BZGRSZWYgKElEcm9wVGFyZ2V0ICpU aGlzKQoreworICByZXR1cm4gMTsKK30KKworc3RhdGljIFVMT05HIFNURE1FVEhPRENBTExU WVBFCit3MzJfZHJvcF90YXJnZXRfUmVsZWFzZSAoSURyb3BUYXJnZXQgKlRoaXMpCit7Cisg IHN0cnVjdCB3MzJfZHJvcF90YXJnZXQgKnRhcmdldCA9IChzdHJ1Y3QgdzMyX2Ryb3BfdGFy Z2V0ICogKSBUaGlzOworICBmcmVlICh0YXJnZXQtPmlfZHJvcF90YXJnZXQubHBWdGJsKTsK KyAgZnJlZSAodGFyZ2V0KTsKKyAgcmV0dXJuIDA7Cit9CisKK3N0YXRpYyBIUkVTVUxUIFNU RE1FVEhPRENBTExUWVBFCit3MzJfZHJvcF90YXJnZXRfRHJhZ0VudGVyIChJRHJvcFRhcmdl dCAqVGhpcywgSURhdGFPYmplY3QgKnBEYXRhT2JqLAorCQkJICAgRFdPUkQgZ3JmS2V5U3Rh dGUsIFBPSU5UTCBwdCwgRFdPUkQgKnBkd0VmZmVjdCkKK3sKKyAgKnBkd0VmZmVjdCA9IERS T1BFRkZFQ1RfQ09QWTsKKyAgcmV0dXJuIFNfT0s7Cit9CisKK3N0YXRpYyBIUkVTVUxUIFNU RE1FVEhPRENBTExUWVBFCit3MzJfZHJvcF90YXJnZXRfRHJhZ092ZXIgKElEcm9wVGFyZ2V0 ICpUaGlzLCBEV09SRCBncmZLZXlTdGF0ZSwgUE9JTlRMIHB0LAorCQkJICBEV09SRCAqcGR3 RWZmZWN0KQoreworICAqcGR3RWZmZWN0ID0gRFJPUEVGRkVDVF9DT1BZOworICByZXR1cm4g U19PSzsKK30KKworc3RhdGljIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUKK3czMl9kcm9w X3RhcmdldF9EcmFnTGVhdmUgKElEcm9wVGFyZ2V0ICpUaGlzKQoreworICByZXR1cm4gU19P SzsKK30KKworc3RhdGljIEhHTE9CQUwgdzMyX3RyeV9nZXRfZGF0YSAoSURhdGFPYmplY3Qg KnBEYXRhT2JqLCBpbnQgZm9ybWF0KQoreworICBGT1JNQVRFVEMgZm9ybWF0ZXRjID0geyBm b3JtYXQsIE5VTEwsIERWQVNQRUNUX0NPTlRFTlQsIC0xLAorCQkJICBUWU1FRF9IR0xPQkFM IH07CisgIFNUR01FRElVTSBzdGdtZWRpdW07CisgIEhSRVNVTFQgciA9IElEYXRhT2JqZWN0 X0dldERhdGEgKHBEYXRhT2JqLCAmZm9ybWF0ZXRjLCAmc3RnbWVkaXVtKTsKKyAgaWYgKFNV Q0NFRURFRCAocikpCisgICAgeworICAgICAgaWYgKHN0Z21lZGl1bS50eW1lZCA9PSBUWU1F RF9IR0xPQkFMKQorCXJldHVybiBzdGdtZWRpdW0uaEdsb2JhbDsKKyAgICAgIFJlbGVhc2VT dGdNZWRpdW0gKCZzdGdtZWRpdW0pOworICAgIH0KKyAgcmV0dXJuIE5VTEw7Cit9CisKK3N0 YXRpYyBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFCit3MzJfZHJvcF90YXJnZXRfRHJvcCAo SURyb3BUYXJnZXQgKlRoaXMsIElEYXRhT2JqZWN0ICpwRGF0YU9iaiwKKwkJICAgICAgRFdP UkQgZ3JmS2V5U3RhdGUsIFBPSU5UTCBwdCwgRFdPUkQgKnBkd0VmZmVjdCkKK3sKKyAgc3Ry dWN0IHczMl9kcm9wX3RhcmdldCAqdGFyZ2V0ID0gKHN0cnVjdCB3MzJfZHJvcF90YXJnZXQg KilUaGlzOworICAqcGR3RWZmZWN0ID0gRFJPUEVGRkVDVF9DT1BZOworCisgIFczMk1zZyBt c2cgPSB7MH07CisgIG1zZy5kd01vZGlmaWVycyA9IHczMl9nZXRfbW9kaWZpZXJzKCk7Cisg IG1zZy5tc2cudGltZSA9IEdldE1lc3NhZ2VUaW1lICgpOworICBtc2cubXNnLnB0LnggPSBw dC54OworICBtc2cubXNnLnB0LnkgPSBwdC55OworCisgIGludCBmb3JtYXQgPSBDRl9IRFJP UDsKKyAgSEdMT0JBTCBoR2xvYmFsID0gdzMyX3RyeV9nZXRfZGF0YSAocERhdGFPYmosIGZv cm1hdCk7CisKKyAgaWYgKCFoR2xvYmFsKQorICAgIHsKKyAgICAgIGZvcm1hdCA9IENGX1VO SUNPREVURVhUOworICAgICAgaEdsb2JhbCA9IHczMl90cnlfZ2V0X2RhdGEgKHBEYXRhT2Jq LCBmb3JtYXQpOworICAgIH0KKworICBpZiAoIWhHbG9iYWwpCisgICAgeworICAgICAgZm9y bWF0ID0gQ0ZfVEVYVDsKKyAgICAgIGhHbG9iYWwgPSB3MzJfdHJ5X2dldF9kYXRhIChwRGF0 YU9iaiwgZm9ybWF0KTsKKyAgICB9CisKKyAgaWYgKGhHbG9iYWwpCisgICAgICBteV9wb3N0 X21zZyAoJm1zZywgdGFyZ2V0LT5od25kLCBXTV9FTUFDU19EUk9QLCBmb3JtYXQsCisJCSAg IChMUEFSQU0pIGhHbG9iYWwpOworCisgIHJldHVybiBTX09LOworfQorCiBzdGF0aWMgdm9p ZAogdzMyX2NyZWF0ZXdpbmRvdyAoc3RydWN0IGZyYW1lICpmLCBpbnQgKmNvb3JkcykKIHsK QEAgLTI1NDgsNyArMjcyNSwyMCBAQCB3MzJfY3JlYXRld2luZG93IChzdHJ1Y3QgZnJhbWUg KmYsIGludCAqY29vcmRzKQogICAgICAgU2V0V2luZG93TG9uZyAoaHduZCwgV05EX0JBQ0tH Uk9VTkRfSU5ERVgsIEZSQU1FX0JBQ0tHUk9VTkRfUElYRUwgKGYpKTsKIAogICAgICAgLyog RW5hYmxlIGRyYWctbi1kcm9wLiAgKi8KLSAgICAgIERyYWdBY2NlcHRGaWxlcyAoaHduZCwg VFJVRSk7CisgICAgICBzdHJ1Y3QgdzMyX2Ryb3BfdGFyZ2V0ICpkcm9wX3RhcmdldCA9CisJ bWFsbG9jIChzaXplb2YgKHN0cnVjdCB3MzJfZHJvcF90YXJnZXQpKTsKKyAgICAgIGRyb3Bf dGFyZ2V0LT5od25kID0gaHduZDsKKworICAgICAgSURyb3BUYXJnZXRWdGJsICp2dGJsID0g bWFsbG9jIChzaXplb2YgKElEcm9wVGFyZ2V0VnRibCkpOworICAgICAgZHJvcF90YXJnZXQt PmlfZHJvcF90YXJnZXQubHBWdGJsID0gdnRibDsKKyAgICAgIHZ0YmwtPlF1ZXJ5SW50ZXJm YWNlID0gdzMyX2Ryb3BfdGFyZ2V0X1F1ZXJ5SW50ZXJmYWNlOworICAgICAgdnRibC0+QWRk UmVmID0gdzMyX2Ryb3BfdGFyZ2V0X0FkZFJlZjsKKyAgICAgIHZ0YmwtPlJlbGVhc2UgPSB3 MzJfZHJvcF90YXJnZXRfUmVsZWFzZTsKKyAgICAgIHZ0YmwtPkRyYWdFbnRlciA9IHczMl9k cm9wX3RhcmdldF9EcmFnRW50ZXI7CisgICAgICB2dGJsLT5EcmFnT3ZlciA9IHczMl9kcm9w X3RhcmdldF9EcmFnT3ZlcjsKKyAgICAgIHZ0YmwtPkRyYWdMZWF2ZSA9IHczMl9kcm9wX3Rh cmdldF9EcmFnTGVhdmU7CisgICAgICB2dGJsLT5Ecm9wID0gdzMyX2Ryb3BfdGFyZ2V0X0Ry b3A7CisgICAgICBSZWdpc3RlckRyYWdEcm9wIChod25kLCAmZHJvcF90YXJnZXQtPmlfZHJv cF90YXJnZXQpOwogCiAgICAgICAvKiBFbmFibGUgc3lzdGVtIGxpZ2h0L2RhcmsgdGhlbWUu ICAqLwogICAgICAgdzMyX2FwcGx5dGhlbWUgKGh3bmQpOwpAQCAtMzM5OSw2ICszNTg5LDcg QEAgI2RlZmluZSBNKG1zZykgeyBtc2csICMgbXNnIH0KICAgICAgIE0gKFdNX0VNQUNTX1BB SU5UKSwKICAgICAgIE0gKFdNX0VNQUNTX0lNRV9TVEFUVVMpLAogICAgICAgTSAoV01fQ0hB UiksCisgICAgICBNIChXTV9FTUFDU19EUk9QKSwKICN1bmRlZiBNCiAgICAgICB7IDAsIDAg fQogICB9OwpAQCAtMzQ2NSwxMyArMzY1NiwxNCBAQCB3MzJfbXNnX3B1bXAgKGRlZmVycmVk X21zZyAqIG1zZ19idWYpCiAJICAgICAgLyogUHJvZHVjZWQgYnkgY29tcGxldGVfZGVmZXJy ZWRfbXNnOyBqdXN0IGlnbm9yZS4gICovCiAJICAgICAgYnJlYWs7CiAJICAgIGNhc2UgV01f RU1BQ1NfQ1JFQVRFV0lORE9XOgotCSAgICAgIC8qIEluaXRpYWxpemUgQ09NIGZvciB0aGlz IHdpbmRvdy4gRXZlbiB0aG91Z2ggd2UgZG9uJ3QgdXNlIGl0LAotCQkgc29tZSB0aGlyZCBw YXJ0eSBzaGVsbCBleHRlbnNpb25zIGNhbiBjYXVzZSBpdCB0byBiZSB1c2VkIGluCisJICAg ICAgLyogSW5pdGlhbGl6ZSBDT00gZm9yIHRoaXMgd2luZG93LiAgTmVlZGVkIGZvciBSZWdp c3RlckRyYWdEcm9wLgorCQkgU29tZSB0aGlyZCBwYXJ0eSBzaGVsbCBleHRlbnNpb25zIGNh biBjYXVzZSBpdCB0byBiZSB1c2VkIGluCiAJCSBzeXN0ZW0gZGlhbG9ncywgd2hpY2ggY2F1 c2VzIGEgY3Jhc2ggaWYgaXQgaXMgbm90IGluaXRpYWxpemVkLgogCQkgVGhpcyBpcyBhIGtu b3duIGJ1ZyBpbiBXaW5kb3dzLCB3aGljaCB3YXMgZml4ZWQgbG9uZyBhZ28sIGJ1dAogCQkg dGhlIHBhdGNoIGZvciBYUCBpcyBub3QgcHVibGljbHkgYXZhaWxhYmxlIHVudGlsIFhQIFNQ MywKIAkJIGFuZCBvbGRlciB2ZXJzaW9ucyB3aWxsIG5ldmVyIGJlIHBhdGNoZWQuICAqLwot CSAgICAgIENvSW5pdGlhbGl6ZSAoTlVMTCk7CisJICAgICAgT2xlSW5pdGlhbGl6ZSAoTlVM TCk7CisKIAkgICAgICB3MzJfY3JlYXRld2luZG93ICgoc3RydWN0IGZyYW1lICopIG1zZy53 UGFyYW0sCiAJCQkJKGludCAqKSBtc2cubFBhcmFtKTsKIAkgICAgICBpZiAoIVBvc3RUaHJl YWRNZXNzYWdlIChkd01haW5UaHJlYWRJZCwgV01fRU1BQ1NfRE9ORSwgMCwgMCkpCkBAIC01 MTA2LDcgKzUyOTgsNiBAQCAjZGVmaW5lIE1PVVNFRVZFTlRGX0ZST01UT1VDSCAweEZGNTE1 NzAwCiAgICAgICByZXR1cm4gMDsKIAogICAgIGNhc2UgV01fTU9VU0VXSEVFTDoKLSAgICBj YXNlIFdNX0RST1BGSUxFUzoKICAgICAgIHdtc2cuZHdNb2RpZmllcnMgPSB3MzJfZ2V0X21v ZGlmaWVycyAoKTsKICAgICAgIG15X3Bvc3RfbXNnICgmd21zZywgaHduZCwgbXNnLCB3UGFy YW0sIGxQYXJhbSk7CiAgICAgICBzaWduYWxfdXNlcl9pbnB1dCAoKTsKQEAgLTU1OTcsNyAr NTc4OCw3IEBAICNkZWZpbmUgV01fVE9VQ0ggNTc2CiAgICAgICB9CiAKICAgICBjYXNlIFdN X0VNQUNTX0RFU1RST1lXSU5ET1c6Ci0gICAgICBEcmFnQWNjZXB0RmlsZXMgKChIV05EKSB3 UGFyYW0sIEZBTFNFKTsKKyAgICAgIFJldm9rZURyYWdEcm9wICgoSFdORCkgd1BhcmFtKTsK ICAgICAgIHJldHVybiBEZXN0cm95V2luZG93ICgoSFdORCkgd1BhcmFtKTsKIAogICAgIGNh c2UgV01fRU1BQ1NfSElERV9DQVJFVDoKZGlmZiAtLWdpdCBhL3NyYy93MzJ0ZXJtLmMgYi9z cmMvdzMydGVybS5jCmluZGV4IDYyMDM3ZTNiMmNkLi4zYTYyNzMwODEzNyAxMDA2NDQKLS0t IGEvc3JjL3czMnRlcm0uYworKysgYi9zcmMvdzMydGVybS5jCkBAIC0zNTc2LDgxICszNTc2 LDYgQEAgdzMyX2NvbnN0cnVjdF9tb3VzZV93aGVlbCAoc3RydWN0IGlucHV0X2V2ZW50ICpy ZXN1bHQsIFczMk1zZyAqbXNnLAogICByZXR1cm4gUW5pbDsKIH0KIAotc3RhdGljIExpc3Bf T2JqZWN0Ci13MzJfY29uc3RydWN0X2RyYWdfbl9kcm9wIChzdHJ1Y3QgaW5wdXRfZXZlbnQg KnJlc3VsdCwgVzMyTXNnICptc2csCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1 Y3QgZnJhbWUgKmYpCi17Ci0gIExpc3BfT2JqZWN0IGZpbGVzOwotICBMaXNwX09iamVjdCBm cmFtZTsKLSAgSERST1AgaGRyb3A7Ci0gIFBPSU5UIHA7Ci0gIFdPUkQgbnVtX2ZpbGVzOwot ICB3Y2hhcl90IG5hbWVfd1tNQVhfUEFUSF07Ci0jaWZkZWYgTlRHVUlfVU5JQ09ERQotICBj b25zdCBpbnQgdXNlX3VuaWNvZGUgPSAxOwotI2Vsc2UKLSAgaW50IHVzZV91bmljb2RlID0g dzMyX3VuaWNvZGVfZmlsZW5hbWVzOwotICBjaGFyIG5hbWVfYVtNQVhfUEFUSF07Ci0gIGNo YXIgZmlsZVtNQVhfVVRGOF9QQVRIXTsKLSNlbmRpZgotICBpbnQgaTsKLQotICByZXN1bHQt PmtpbmQgPSBEUkFHX05fRFJPUF9FVkVOVDsKLSAgcmVzdWx0LT5jb2RlID0gMDsKLSAgcmVz dWx0LT50aW1lc3RhbXAgPSBtc2ctPm1zZy50aW1lOwotICByZXN1bHQtPm1vZGlmaWVycyA9 IG1zZy0+ZHdNb2RpZmllcnM7Ci0KLSAgaGRyb3AgPSAoSERST1ApIG1zZy0+bXNnLndQYXJh bTsKLSAgRHJhZ1F1ZXJ5UG9pbnQgKGhkcm9wLCAmcCk7Ci0KLSNpZiAwCi0gIHAueCA9IExP V09SRCAobXNnLT5tc2cubFBhcmFtKTsKLSAgcC55ID0gSElXT1JEIChtc2ctPm1zZy5sUGFy YW0pOwotICBTY3JlZW5Ub0NsaWVudCAobXNnLT5tc2cuaHduZCwgJnApOwotI2VuZGlmCi0K LSAgWFNFVElOVCAocmVzdWx0LT54LCBwLngpOwotICBYU0VUSU5UIChyZXN1bHQtPnksIHAu eSk7Ci0KLSAgbnVtX2ZpbGVzID0gRHJhZ1F1ZXJ5RmlsZSAoaGRyb3AsIDB4RkZGRkZGRkYs IE5VTEwsIDApOwotICBmaWxlcyA9IFFuaWw7Ci0KLSAgZm9yIChpID0gMDsgaSA8IG51bV9m aWxlczsgaSsrKQotICAgIHsKLSAgICAgIGlmICh1c2VfdW5pY29kZSkKLQl7Ci0JICBlYXNz ZXJ0IChEcmFnUXVlcnlGaWxlVyAoaGRyb3AsIGksIE5VTEwsIDApIDwgTUFYX1BBVEgpOwot CSAgLyogSWYgRHJhZ1F1ZXJ5RmlsZSByZXR1cm5zIHplcm8sIGl0IGZhaWxlZCB0byBmZXRj aCBhIGZpbGUKLQkgICAgIG5hbWUuICAqLwotCSAgaWYgKERyYWdRdWVyeUZpbGVXIChoZHJv cCwgaSwgbmFtZV93LCBNQVhfUEFUSCkgPT0gMCkKLQkgICAgY29udGludWU7Ci0jaWZkZWYg TlRHVUlfVU5JQ09ERQotCSAgZmlsZXMgPSBGY29ucyAoZnJvbV91bmljb2RlX2J1ZmZlciAo bmFtZV93KSwgZmlsZXMpOwotI2Vsc2UKLQkgIGZpbGVuYW1lX2Zyb21fdXRmMTYgKG5hbWVf dywgZmlsZSk7Ci0JICBmaWxlcyA9IEZjb25zIChERUNPREVfRklMRSAoYnVpbGRfdW5pYnl0 ZV9zdHJpbmcgKGZpbGUpKSwgZmlsZXMpOwotI2VuZGlmIC8qIE5UR1VJX1VOSUNPREUgKi8K LQl9Ci0jaWZuZGVmIE5UR1VJX1VOSUNPREUKLSAgICAgIGVsc2UKLQl7Ci0JICBlYXNzZXJ0 IChEcmFnUXVlcnlGaWxlQSAoaGRyb3AsIGksIE5VTEwsIDApIDwgTUFYX1BBVEgpOwotCSAg aWYgKERyYWdRdWVyeUZpbGVBIChoZHJvcCwgaSwgbmFtZV9hLCBNQVhfUEFUSCkgPT0gMCkK LQkgICAgY29udGludWU7Ci0JICBmaWxlbmFtZV9mcm9tX2Fuc2kgKG5hbWVfYSwgZmlsZSk7 Ci0JICBmaWxlcyA9IEZjb25zIChERUNPREVfRklMRSAoYnVpbGRfdW5pYnl0ZV9zdHJpbmcg KGZpbGUpKSwgZmlsZXMpOwotCX0KLSNlbmRpZgotICAgIH0KLQotICBEcmFnRmluaXNoICho ZHJvcCk7Ci0KLSAgWFNFVEZSQU1FIChmcmFtZSwgZik7Ci0gIHJlc3VsdC0+ZnJhbWVfb3Jf d2luZG93ID0gZnJhbWU7Ci0gIHJlc3VsdC0+YXJnID0gZmlsZXM7Ci0gIHJldHVybiBRbmls OwotfQotCiAMCiAjaWYgSEFWRV9XMzJOT1RJRlkKIApAQCAtNTY4MiwxMSArNTYwNywyNiBA QCB3MzJfcmVhZF9zb2NrZXQgKHN0cnVjdCB0ZXJtaW5hbCAqdGVybWluYWwsCiAJICB9CiAJ ICBicmVhazsKIAotCWNhc2UgV01fRFJPUEZJTEVTOgotCSAgZiA9IHczMl93aW5kb3dfdG9f ZnJhbWUgKGRweWluZm8sIG1zZy5tc2cuaHduZCk7CisJY2FzZSBXTV9FTUFDU19EUk9QOgor CSAgeworCSAgICBpbnQgZm9ybWF0ID0gbXNnLm1zZy53UGFyYW07CisJICAgIExpc3BfT2Jq ZWN0IGRyb3Bfb2JqZWN0ID0KKwkgICAgICB3MzJfcHJvY2Vzc19kbmRfZGF0YSAoZm9ybWF0 LCAodm9pZCAqKSBtc2cubXNnLmxQYXJhbSk7CiAKLQkgIGlmIChmKQotCSAgICB3MzJfY29u c3RydWN0X2RyYWdfbl9kcm9wICgmaW5ldiwgJm1zZywgZik7CisJICAgIGYgPSB3MzJfd2lu ZG93X3RvX2ZyYW1lIChkcHlpbmZvLCBtc2cubXNnLmh3bmQpOworCSAgICBpZiAoIWYgfHwg TklMUCAoZHJvcF9vYmplY3QpKQorCSAgICAgIGJyZWFrOworCisJICAgIFhTRVRGUkFNRSAo aW5ldi5mcmFtZV9vcl93aW5kb3csIGYpOworCSAgICBpbmV2LmtpbmQgPSBEUkFHX05fRFJP UF9FVkVOVDsKKwkgICAgaW5ldi5jb2RlID0gMDsKKwkgICAgaW5ldi50aW1lc3RhbXAgPSBt c2cubXNnLnRpbWU7CisJICAgIGluZXYubW9kaWZpZXJzID0gbXNnLmR3TW9kaWZpZXJzOwor CSAgICBTY3JlZW5Ub0NsaWVudCAobXNnLm1zZy5od25kLCAmbXNnLm1zZy5wdCk7CisJICAg IFhTRVRJTlQgKGluZXYueCwgbXNnLm1zZy5wdC54KTsKKwkgICAgWFNFVElOVCAoaW5ldi55 LCBtc2cubXNnLnB0LnkpOworCSAgICBpbmV2LmFyZyA9IGRyb3Bfb2JqZWN0OworCSAgfQog CSAgYnJlYWs7CiAKIAljYXNlIFdNX0hTQ1JPTEw6CmRpZmYgLS1naXQgYS9zcmMvdzMydGVy bS5oIGIvc3JjL3czMnRlcm0uaAppbmRleCA0N2JlNTQyZjU3MC4uMzllMjI2MmUyYTggMTAw NjQ0Ci0tLSBhL3NyYy93MzJ0ZXJtLmgKKysrIGIvc3JjL3czMnRlcm0uaApAQCAtMjcyLDYg KzI3Miw3IEBAICNkZWZpbmUgQ1BfREVGQVVMVCAxMDA0CiAKIC8qIHczMmZucy5jICovCiBl eHRlcm4gdm9pZCB3MzJfZGVmYXVsdF9mb250X3BhcmFtZXRlciAoc3RydWN0IGZyYW1lKiBm LCBMaXNwX09iamVjdCBwYXJtcyk7CitleHRlcm4gTGlzcF9PYmplY3QgdzMyX3Byb2Nlc3Nf ZG5kX2RhdGEgKGludCBmb3JtYXQsIHZvaWQgKnBEYXRhT2JqKTsKIAogDAogI2RlZmluZSBQ SVhfVFlQRSBDT0xPUlJFRgpAQCAtNzEwLDcgKzcxMSw4IEBAICNkZWZpbmUgV01fRU1BQ1Nf QlJJTkdUT1RPUCAgICAgICAgICAgIChXTV9FTUFDU19TVEFSVCArIDIzKQogI2RlZmluZSBX TV9FTUFDU19JTlBVVF9SRUFEWSAgICAgICAgICAgKFdNX0VNQUNTX1NUQVJUICsgMjQpCiAj ZGVmaW5lIFdNX0VNQUNTX0ZJTEVOT1RJRlkgICAgICAgICAgICAoV01fRU1BQ1NfU1RBUlQg KyAyNSkKICNkZWZpbmUgV01fRU1BQ1NfSU1FX1NUQVRVUyAgICAgICAgICAgIChXTV9FTUFD U19TVEFSVCArIDI2KQotI2RlZmluZSBXTV9FTUFDU19FTkQgICAgICAgICAgICAgICAgICAg KFdNX0VNQUNTX1NUQVJUICsgMjcpCisjZGVmaW5lIFdNX0VNQUNTX0RST1AgICAgICAgICAg ICAgICAgICAoV01fRU1BQ1NfU1RBUlQgKyAyNykKKyNkZWZpbmUgV01fRU1BQ1NfRU5EICAg ICAgICAgICAgICAgICAgIChXTV9FTUFDU19TVEFSVCArIDI4KQogCiAjZGVmaW5lIFdORF9G T05UV0lEVEhfSU5ERVggICAgKDApCiAjZGVmaW5lIFdORF9MSU5FSEVJR0hUX0lOREVYICAg KDQpCi0tIAoyLjM1LjEud2luZG93cy4yCgo= --------------IMNsYWjK50U0KmTAHEpGC9Ot-- From debbugs-submit-bounces@debbugs.gnu.org Sat Oct 05 07:08:08 2024 Received: (at 3468) by debbugs.gnu.org; 5 Oct 2024 11:08:08 +0000 Received: from localhost ([127.0.0.1]:37384 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sx2ds-0008U3-0u for submit@debbugs.gnu.org; Sat, 05 Oct 2024 07:08:08 -0400 Received: from eggs.gnu.org ([209.51.188.92]:40732) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sx2dp-0008TX-Vx for 3468@debbugs.gnu.org; Sat, 05 Oct 2024 07:08:06 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sx2dg-0007c3-3N; Sat, 05 Oct 2024 07:07:56 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=ZFXo7kSRJM7cBbSyW6o70YxQrLSupuLbVoLrNnQsmw8=; b=VXYs3DCGE6Bb CqqF0IIn0DkJOntfzYkA7AxWVWwMu2iJPqBDnbTum4O3qBp0Q58M6OL8QXKPYKSAxtWyB6lwid8h3 0anADyyNse09NYi+sWd2Wc3PZ33/uw9N6Uu/iVkVdqG0Lrd5Mnvf07SXOkwvORLs/kt9RpGa5wcvK QdOn6TTNc4AjoEz265HQnJ5JMZIZU0v+CsuUrsryWlNjBVLJnIH2ycXif1m/M5WdVwUAO522FqyK9 4KzfvhcyMB6zfdrrGLYpVU6blNQTkxYzMZ69eaE+KWFxUZsKUH4P1tWVXXbNyHJVa3znLHxiMoJpo J6wTvusewxZSz6p6/YWJSg==; Date: Sat, 05 Oct 2024 14:07:52 +0300 Message-Id: <86ed4ux0xj.fsf@gnu.org> From: Eli Zaretskii To: Cecilio Pardo In-Reply-To: (message from Cecilio Pardo on Mon, 30 Sep 2024 23:20:32 +0200) Subject: Re: bug#3468: drag and drop text References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 3468 Cc: 3468@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: -3.3 (---) > Date: Mon, 30 Sep 2024 23:20:32 +0200 > From: Cecilio Pardo > Cc: 3468@debbugs.gnu.org > > Here is the reworked version. > > Now the processing of the drop data is delayed until we process the > WM_EMACS_DROP message at w32_read_socket. > > There is no malloc/strdup. Well, there are still 2 calls to malloc in w32_createwindow. Any reasons not to call xmalloc instead? Can w32_createwindow be called before we call init_heap? And I have a few minor comments below. > + if (files->fWide) > + { > + WCHAR *p = (WCHAR *) start_of_files; > + for (; *p; p += wcslen (p) + 1) > + { > + filename_from_utf16(p, filename); > + lisp_files = Fcons (DECODE_FILE (build_string (filename)), ^^^^^^^^^^^^ This should use build_unibyte_string instead, since we know we want a unibyte string here, which we then decode. > + for (; *p; p += strlen(p) + 1) > + { > + filename_from_ansi (p, filename); > + lisp_files = Fcons (DECODE_FILE (build_string (filename)), > + lisp_files ); Same here. > +Lisp_Object > +w32_process_dnd_data (int format, void *hGlobal) > +{ > + Lisp_Object result = Qnil; > + HGLOBAL hg = (HGLOBAL) hGlobal; > + > + switch (format) > + { > + case CF_HDROP: > + { > + DROPFILES *files = (DROPFILES *) GlobalLock (hg); > + if (files) > + result = process_dropfiles (files); > + GlobalUnlock (hg); > + break; > + } > + case CF_UNICODETEXT: > + { > + WCHAR *text = (WCHAR *) GlobalLock (hg); > + result = from_unicode_buffer (text); > + GlobalUnlock (hg); > + break; > + } > + case CF_TEXT: > + { > + char *text = (char *) GlobalLock (hg); > + result = DECODE_SYSTEM (build_unibyte_string (text)); > + GlobalUnlock (hg); > + break; > + } > + } > + > + GlobalFree (hg); This function should call block_input at entry and unblock_input before it exits, because we must make sure all the GlobalLock calls are paired with GlobalUnlock and GlobalFree, while functions we call here, process_dropfiles etc., all cons Lisp object, and therefore could potentially QUIT, which throws to top-level. > +static HRESULT STDMETHODCALLTYPE > +w32_drop_target_DragEnter (IDropTarget *This, IDataObject *pDataObj, > + DWORD grfKeyState, POINTL pt, DWORD *pdwEffect) > +{ > + *pdwEffect = DROPEFFECT_COPY; > + return S_OK; > +} > + > +static HRESULT STDMETHODCALLTYPE > +w32_drop_target_DragOver (IDropTarget *This, DWORD grfKeyState, POINTL pt, > + DWORD *pdwEffect) > +{ > + *pdwEffect = DROPEFFECT_COPY; > + return S_OK; It would be good here to have comments that explain the meaning of DROPEFFECT_COPY and the rationale for returning this value. > @@ -2548,7 +2725,20 @@ w32_createwindow (struct frame *f, int *coords) > SetWindowLong (hwnd, WND_BACKGROUND_INDEX, FRAME_BACKGROUND_PIXEL (f)); > > /* Enable drag-n-drop. */ > - DragAcceptFiles (hwnd, TRUE); > + struct w32_drop_target *drop_target = > + malloc (sizeof (struct w32_drop_target)); > + drop_target->hwnd = hwnd; > + > + IDropTargetVtbl *vtbl = malloc (sizeof (IDropTargetVtbl)); > + drop_target->i_drop_target.lpVtbl = vtbl; > + vtbl->QueryInterface = w32_drop_target_QueryInterface; > + vtbl->AddRef = w32_drop_target_AddRef; > + vtbl->Release = w32_drop_target_Release; > + vtbl->DragEnter = w32_drop_target_DragEnter; > + vtbl->DragOver = w32_drop_target_DragOver; > + vtbl->DragLeave = w32_drop_target_DragLeave; > + vtbl->Drop = w32_drop_target_Drop; > + RegisterDragDrop (hwnd, &drop_target->i_drop_target); Do we ever have to free the two memory chunks we allocate here? Like when the window is disposed of? From debbugs-submit-bounces@debbugs.gnu.org Sat Oct 05 08:07:15 2024 Received: (at 3468) by debbugs.gnu.org; 5 Oct 2024 12:07:15 +0000 Received: from localhost ([127.0.0.1]:37410 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sx3Z4-00037Q-OP for submit@debbugs.gnu.org; Sat, 05 Oct 2024 08:07:14 -0400 Received: from mail.imayhem.com ([82.223.54.191]:54617 helo=zealous-pike.82-223-54-191.plesk.page) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sx3Z2-00037A-J1 for 3468@debbugs.gnu.org; Sat, 05 Oct 2024 08:07:13 -0400 Received: from [192.168.68.104] (111.red-88-21-7.staticip.rima-tde.net [88.21.7.111]) by zealous-pike.82-223-54-191.plesk.page (Postfix) with ESMTPSA id C485580182; Sat, 5 Oct 2024 12:07:01 +0000 (UTC) Authentication-Results: zealous-pike.82-223-54-191.plesk.page; spf=pass (sender IP is 88.21.7.111) smtp.mailfrom=cpardo@imayhem.com smtp.helo=[192.168.68.104] Received-SPF: pass (zealous-pike.82-223-54-191.plesk.page: connection is authenticated) Message-ID: Date: Sat, 5 Oct 2024 14:07:01 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#3468: drag and drop text To: Eli Zaretskii References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> <86ed4ux0xj.fsf@gnu.org> Content-Language: es-ES From: Cecilio Pardo In-Reply-To: <86ed4ux0xj.fsf@gnu.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 3468 Cc: 3468@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 (-) On 05/10/2024 13:07, Eli Zaretskii wrote: >> There is no malloc/strdup. > > Well, there are still 2 calls to malloc in w32_createwindow. Any > reasons not to call xmalloc instead? Can w32_createwindow be called > before we call init_heap? [...] > Do we ever have to free the two memory chunks we allocate here? Like > when the window is disposed of? They are freed in w32_drop_target_Release, which is called internally when we call RevokeDragDrop while handling the WW_EMACS_DESTROYWINDOW on w32_wnd_proc. As this runs on the input thread, I used malloc/free instead of xmalloc/xfree. I could send a message to handle on w32_read_socket and then use xmalloc. > This function should call block_input at entry and unblock_input > before it exits, because we must make sure all the GlobalLock calls > are paired with GlobalUnlock and GlobalFree, while functions we call > here, process_dropfiles etc., all cons Lisp object, and therefore > could potentially QUIT, which throws to top-level. The function (w32_process_dnd_data) is called from within the block_input/unblock_input on w32_read_socket. Should I add its own calls for clarity? Maybe just a comment? Thanks. From debbugs-submit-bounces@debbugs.gnu.org Sat Oct 05 08:31:01 2024 Received: (at 3468) by debbugs.gnu.org; 5 Oct 2024 12:31:01 +0000 Received: from localhost ([127.0.0.1]:37436 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sx3w5-0004PC-8J for submit@debbugs.gnu.org; Sat, 05 Oct 2024 08:31:01 -0400 Received: from eggs.gnu.org ([209.51.188.92]:52062) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sx3w2-0004Oy-Ql for 3468@debbugs.gnu.org; Sat, 05 Oct 2024 08:30:59 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sx3vs-0001Pq-FU; Sat, 05 Oct 2024 08:30:48 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=rx0rGxj0GkTLt4lxv6afd0zQOWi7x6iWBlsxZZ6s+II=; b=KSOtm/3x3xZ5 ZrgJUw620K1nxljCq1fuUx3TUkIRgGlh4In85WZtA0XjQ0SCP8lnxxoZ7iV3eKmWyFPWLLNnzBBi7 3Ff16uqmS18i488J0tabdgwD8I0yKUjI0Q2ymnlkoFeiGq5ISoU6Lbmli5LM1a5FanNcLP+CH7hhV P4/QSP3+R/5y33iDTuU+XiK68q2lXVa1HBVig3yc51rXPNc5Qw+R5Eu6nGQ9s3FknxWQjSPVdg1x2 tDr4HVxa60pN7utgkpvGajuIlSgAUSnRbYw2AOxpgVwshUOo35AWC9YE3OMPfZUmPRNTwSFk2qgQW ZYBx+sMNh1XWv2gW/p8AvA==; Date: Sat, 05 Oct 2024 15:30:45 +0300 Message-Id: <86a5fiwx3e.fsf@gnu.org> From: Eli Zaretskii To: Cecilio Pardo In-Reply-To: (message from Cecilio Pardo on Sat, 5 Oct 2024 14:07:01 +0200) Subject: Re: bug#3468: drag and drop text References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> <86ed4ux0xj.fsf@gnu.org> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 3468 Cc: 3468@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: -3.3 (---) > Date: Sat, 5 Oct 2024 14:07:01 +0200 > Cc: 3468@debbugs.gnu.org > From: Cecilio Pardo > > On 05/10/2024 13:07, Eli Zaretskii wrote: > > >> There is no malloc/strdup. > > > > Well, there are still 2 calls to malloc in w32_createwindow. Any > > reasons not to call xmalloc instead? Can w32_createwindow be called > > before we call init_heap? > > [...] > > > Do we ever have to free the two memory chunks we allocate here? Like > > when the window is disposed of? > > They are freed in w32_drop_target_Release, which is called internally > when we call RevokeDragDrop while handling the WW_EMACS_DESTROYWINDOW on > w32_wnd_proc. > > As this runs on the input thread, I used malloc/free instead of > xmalloc/xfree. I could send a message to handle on w32_read_socket and > then use xmalloc. It's okay to use malloc/free in this case, but we must check the return value of malloc to not be NULL. > > This function should call block_input at entry and unblock_input > > before it exits, because we must make sure all the GlobalLock calls > > are paired with GlobalUnlock and GlobalFree, while functions we call > > here, process_dropfiles etc., all cons Lisp object, and therefore > > could potentially QUIT, which throws to top-level. > > The function (w32_process_dnd_data) is called from within the > block_input/unblock_input on w32_read_socket. Ah, okay. > Should I add its own calls for clarity? Maybe just a comment? Yes, please. From debbugs-submit-bounces@debbugs.gnu.org Sat Oct 05 08:34:41 2024 Received: (at 3468) by debbugs.gnu.org; 5 Oct 2024 12:34:41 +0000 Received: from localhost ([127.0.0.1]:37451 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sx3zc-0004VZ-MX for submit@debbugs.gnu.org; Sat, 05 Oct 2024 08:34:40 -0400 Received: from eggs.gnu.org ([209.51.188.92]:44604) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sx3zb-0004VK-2n for 3468@debbugs.gnu.org; Sat, 05 Oct 2024 08:34:40 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sx3zR-0001lz-8k; Sat, 05 Oct 2024 08:34:29 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=SKa5FwHMegwYbA5ZtN833UJTQqsOSCnwr3POyZumJ2U=; b=A7Nx9Xg/LTQJ SqdzRR1QRww4DZuHOq03uB7MPByoH3zzD/BI/rifnPD5UXBpZURAmSbo9SRycK65XW9xyaucy8qDP Cek2TSHsu1F7MC71wLWdOszB10eMExofZvVY/FwQvtowfgGMqhFIpF5myQPNNixbkVbj1jH/s5dpf YIEAFOEyEOVPSmgW7gW948XqbyOvT9y5EA95EXaK3A3J4tN8jmSdQJXo4zyqhH1n3lUoBzxV8ChbT LiJth1aP1IIDYM+i/8VI2NyiQbraR1bwbiXsEp1S4ISNxkOB2nMT4y33VVki/6u5ACZGhWS7V1bdN XuEMXthTHHUGT4GGDQFryA==; Date: Sat, 05 Oct 2024 15:34:27 +0300 Message-Id: <867camwwx8.fsf@gnu.org> From: Eli Zaretskii To: cpardo@imayhem.com In-Reply-To: <86a5fiwx3e.fsf@gnu.org> (message from Eli Zaretskii on Sat, 05 Oct 2024 15:30:45 +0300) Subject: Re: bug#3468: drag and drop text References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> <86ed4ux0xj.fsf@gnu.org> <86a5fiwx3e.fsf@gnu.org> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 3468 Cc: 3468@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: -3.3 (---) > Cc: 3468@debbugs.gnu.org > Date: Sat, 05 Oct 2024 15:30:45 +0300 > From: Eli Zaretskii > > > Should I add its own calls for clarity? Maybe just a comment? > > Yes, please. I meant to say that a comment will be enough. From debbugs-submit-bounces@debbugs.gnu.org Sat Oct 05 17:42:10 2024 Received: (at 3468) by debbugs.gnu.org; 5 Oct 2024 21:42:10 +0000 Received: from localhost ([127.0.0.1]:39697 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sxCXS-0000ra-8G for submit@debbugs.gnu.org; Sat, 05 Oct 2024 17:42:10 -0400 Received: from mail.imayhem.com ([82.223.54.191]:51665 helo=zealous-pike.82-223-54-191.plesk.page) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sxCXP-0000rD-Sw for 3468@debbugs.gnu.org; Sat, 05 Oct 2024 17:42:08 -0400 Received: from [192.168.68.104] (111.red-88-21-7.staticip.rima-tde.net [88.21.7.111]) by zealous-pike.82-223-54-191.plesk.page (Postfix) with ESMTPSA id C9FEE8016B; Sat, 5 Oct 2024 21:41:56 +0000 (UTC) Authentication-Results: zealous-pike.82-223-54-191.plesk.page; spf=pass (sender IP is 88.21.7.111) smtp.mailfrom=cpardo@imayhem.com smtp.helo=[192.168.68.104] Received-SPF: pass (zealous-pike.82-223-54-191.plesk.page: connection is authenticated) Message-ID: <258ce0b8-95b3-4e39-ba52-fc007326c891@imayhem.com> Date: Sat, 5 Oct 2024 23:41:55 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#3468: drag and drop text To: Eli Zaretskii References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> <86ed4ux0xj.fsf@gnu.org> <86a5fiwx3e.fsf@gnu.org> <867camwwx8.fsf@gnu.org> Content-Language: es-ES From: Cecilio Pardo In-Reply-To: <867camwwx8.fsf@gnu.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 3468 Cc: 3468@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 (-) Here is the new version of the patch, with everything addressed. Looking at the manual, in the "Drag and Drop" chapter it says: > It can be difficult to scroll a window or determine where dropped > text will be inserted while dragging text onto an Emacs window. > Setting the option ‘dnd-indicate-insertion-point’ to a non-‘nil’ value > makes point move to the location any dropped text will be inserted > when the mouse moves in a window during drag, and setting > ‘dnd-scroll-margin’ to an integer value causes a window to be scrolled > if the mouse moves within that many lines of the top or bottom of the > window during drag. This should be implemented on Windows too, but it will take me some time. Maybe you prefer to wait before installing the changes. Also, do you think the manual should be updated too? From debbugs-submit-bounces@debbugs.gnu.org Sat Oct 05 17:43:50 2024 Received: (at 3468) by debbugs.gnu.org; 5 Oct 2024 21:43:50 +0000 Received: from localhost ([127.0.0.1]:39701 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sxCZ3-0000uA-Ly for submit@debbugs.gnu.org; Sat, 05 Oct 2024 17:43:50 -0400 Received: from mail.imayhem.com ([82.223.54.191]:55501 helo=zealous-pike.82-223-54-191.plesk.page) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sxCZ0-0000tw-Py for 3468@debbugs.gnu.org; Sat, 05 Oct 2024 17:43:48 -0400 Received: from [192.168.68.104] (111.red-88-21-7.staticip.rima-tde.net [88.21.7.111]) by zealous-pike.82-223-54-191.plesk.page (Postfix) with ESMTPSA id 098498016B; Sat, 5 Oct 2024 21:43:35 +0000 (UTC) Authentication-Results: zealous-pike.82-223-54-191.plesk.page; spf=pass (sender IP is 88.21.7.111) smtp.mailfrom=cpardo@imayhem.com smtp.helo=[192.168.68.104] Received-SPF: pass (zealous-pike.82-223-54-191.plesk.page: connection is authenticated) Content-Type: multipart/mixed; boundary="------------ptHQMIPuBnzjxYlYp6zYY9e2" Message-ID: <951aeb15-c9c1-4495-8bc7-402eeb0c19f3@imayhem.com> Date: Sat, 5 Oct 2024 23:43:34 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#3468: drag and drop text From: Cecilio Pardo To: Eli Zaretskii References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> <86ed4ux0xj.fsf@gnu.org> <86a5fiwx3e.fsf@gnu.org> <867camwwx8.fsf@gnu.org> <258ce0b8-95b3-4e39-ba52-fc007326c891@imayhem.com> Content-Language: es-ES In-Reply-To: <258ce0b8-95b3-4e39-ba52-fc007326c891@imayhem.com> X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 3468 Cc: 3468@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 (-) This is a multi-part message in MIME format. --------------ptHQMIPuBnzjxYlYp6zYY9e2 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit This time with the attached patch. --------------ptHQMIPuBnzjxYlYp6zYY9e2 Content-Type: text/plain; charset=UTF-8; name="0001-Implement-drag-n-drop-for-w32-with-support-for-files.patch" Content-Disposition: attachment; filename*0="0001-Implement-drag-n-drop-for-w32-with-support-for-files.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA4YmE3YWZiMjIzYWZkNWM4MWViMDc5OTExNDFhMjI5ZDQxYTlkZTAzIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBDZWNpbGlvIFBhcmRvIDxjcGFyZG9AaW1heWhlbS5j b20+CkRhdGU6IEZyaSwgMjcgU2VwIDIwMjQgMjM6NTg6MDIgKzAyMDAKU3ViamVjdDogW1BB VENIXSBJbXBsZW1lbnQgZHJhZy1uLWRyb3AgZm9yIHczMiB3aXRoIHN1cHBvcnQgZm9yIGZp bGVzIGFuZCB0ZXh0CgpJbXBsZW1lbnQgZHJhZy1uLWRyb3Agd2l0aCBJRHJvcFRhcmdldCBm b3IgTVMtV2luZG93cy4gVGhpcwphbGxvd3MgZm9yIGRyb3BwaW5nIGZpbGVzIG9yIHRleHQu CgoqIGxpc3AvdGVybS93MzItd2luLmVsICh3MzItZHJhZy1uLWRyb3ApOiBDaGFuZ2VkIHRv IGhhbmRsZQpmaWxlcyBvciBzdHJpbmdzLgoqIHNyYy93MzJmbnMuYyAocHJvY2Vzc19kcm9w ZmlsZXMpOiBOZXcgZnVuY3Rpb24gdG8gY29udmVydApEUk9QRklMRVMgc3RydWN0IHRvIGFy cmF5IG9mIHN0cmluZ3MuCih3MzJfcHJvY2Vzc19kbmRfZGF0YSk6IE5ldyBmdW5jdGlvbiB0 byBwcm9jZXNzIGRyb3AgZGF0YS4KKHczMl90cnlfZ2V0X2RhdGEpOiBFeHRyYWN0IGRhdGEg ZnJvbSBJRGF0YU9iamVjdC4KKHczMl9jcmVhdGV3aW5kb3cpOiBBc3NpZ24gYW4gSURyb3BU YXJnZXQgdG8gZWFjaCBuZXcgZnJhbWUuCih3MzJfbmFtZV9vZl9tZXNzYWdlKTogQWRkZWQg bmV3IG1lc3NhZ2UuCih3MzJfbXNnX3B1bXApOiBDaGFuZ2VkIENvSW5pdGlhbGl6ZSB0byBP bGVJbml0aWFsaXplLCBuZWVkZWQKYnkgdGhlIGRyYWctbi1kcm9wIGZ1bmN0aW9ucy4KKHcz Ml93bmRfcHJvYyk6IE5ldyBzdHJ1Y3QgdzMyX2Ryb3BfdGFyZ2V0LCBhbmQKdzMyX2Ryb3Bf dGFyZ2V0XyogZnVuY3Rpb25zIHRvIGltcGxlbWVudCB0aGUgSURyb3BUYXJnZXQKaW50ZXJm YWNlLgoqIHNyYy93MzJ0ZXJtLmMgKHczMl9yZWFkX3NvY2tldCk6IEhhbmRsZSBXTV9FTUFD U19EUk9QIGFuZApyZW1vdmUgV01fRU1BQ1NfRFJPUEZJTEVTLgoqIHNyYy93MzJ0ZXJtLmgg KCk6IEFkZGVkIG5ldyBtZXNzYWdlIFdNX0VNQUNTX0RST1AuCi0tLQogZXRjL05FV1MgICAg ICAgICAgICAgfCAgIDUgKwogbGlzcC90ZXJtL3czMi13aW4uZWwgfCAgMjUgKysrLS0KIHNy Yy93MzJmbnMuYyAgICAgICAgIHwgMjIxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrLS0KIHNyYy93MzJ0ZXJtLmMgICAgICAgIHwgIDk4ICsrKystLS0tLS0t LS0tLS0tLS0KIHNyYy93MzJ0ZXJtLmggICAgICAgIHwgICA0ICstCiA1IGZpbGVzIGNoYW5n ZWQsIDI2MCBpbnNlcnRpb25zKCspLCA5MyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9l dGMvTkVXUyBiL2V0Yy9ORVdTCmluZGV4IGQxYmQ0Njk0MzVmLi44ZDAxZTAzZDAzNiAxMDA2 NDQKLS0tIGEvZXRjL05FV1MKKysrIGIvZXRjL05FV1MKQEAgLTYzNSw2ICs2MzUsMTEgQEAg SW4gcGFydGljdWxhciwgaXQgaXMgbm93IHBvc3NpYmxlIHRvIHNob3cgdGV4dCB3aXRoIGVt YmVkZGVkIG5ld2xpbmVzIGluCiBhIGRpYWxvZyBwb3BwZWQgYnkgJ21lc3NhZ2UtYm94Jy4g IFRoaXMgaXMgc3VwcG9ydGVkIG9uIFdpbmRvd3MgVmlzdGEKIGFuZCBsYXRlciB2ZXJzaW9u cy4KIAorLS0tCisqKiBFbWFjcyBvbiBNUy1XaW5kb3dzIG5vdyBzdXBwb3J0cyBkcmFnLW4t ZHJvcCBvZiB0ZXh0IGludG8gYSBidWZmZXIuCitUaGlzIGlzIGluIGFkZGl0aW9uIHRvIGRy YWctbi1kcm9wIG9mIGZpbGVzLCB0aGF0IHdhcyBhbHJlYWR5IHN1cHBvcnRlZC4KKworCiAM CiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tCiBUaGlzIGZpbGUgaXMgcGFydCBvZiBHTlUgRW1hY3MuCmRp ZmYgLS1naXQgYS9saXNwL3Rlcm0vdzMyLXdpbi5lbCBiL2xpc3AvdGVybS93MzItd2luLmVs CmluZGV4IGI1N2IzZGQzYmVmLi41NDFmZWYyY2VkMyAxMDA2NDQKLS0tIGEvbGlzcC90ZXJt L3czMi13aW4uZWwKKysrIGIvbGlzcC90ZXJtL3czMi13aW4uZWwKQEAgLTEzMSw4ICsxMzEs MTUgQEAgdzMyLWRyb3BwZWQtZmlsZS10by11cmwKICAgIGZpbGUtbmFtZSkpCiAKIChkZWZ1 biB3MzItZHJhZy1uLWRyb3AgKGV2ZW50ICZvcHRpb25hbCBuZXctZnJhbWUpCi0gICJFZGl0 IHRoZSBmaWxlcyBsaXN0ZWQgaW4gdGhlIGRyYWctbi1kcm9wIEVWRU5ULgotU3dpdGNoIHRv IGEgYnVmZmVyIGVkaXRpbmcgdGhlIGxhc3QgZmlsZSBkcm9wcGVkLiIKKyAgIlBlcmZvcm0g ZHJhZy1uLWRyb3AgYWN0aW9uIGFjY29yZGluZyB0byBkYXRhIGluIEVWRU5ULgorSWYgRVZF TlQgaXMgZm9yIG9uZSBvciBtb3JlIGZpbGVzLCB2aXNpdCB0aG9zZSBmaWxlcyBpbiBjb3Jy ZXNwb25kaW5nCitidWZmZXJzLCBhbmQgc3dpdGNoIHRvIHRoZSBidWZmZXIgdGhhdCB2aXNp dHMgdGhlIGxhc3QgZHJvcHBlZCBmaWxlLgorSWYgRVZFTlQgaXMgZm9yIHRleHQsIGluc2Vy dCB0aGF0IHRleHQgYXQgcG9pbnQgaW50byB0aGUgYnVmZmVyCitzaG93biBpbiB0aGUgd2lu ZG93IHRoYXQgaXMgdGhlIHRhcmdldCBvZiB0aGUgZHJvcDsgaWYgdGhhdCBidWZmZXIgaXMK K3JlYWQtb25seSwgYWRkIHRoZSBkcm9wcGVkIHRleHQgdG8ga2lsbC1yaW5nLgorSWYgdGhl IG9wdGlvbmFsIGFyZ3VtZW50IE5FVy1GUkFNRSBpcyBub24tbmlsLCBwZXJmb3JtIHRoZQor ZHJhZy1uLWRyb3AgYWN0aW9uIGluIGEgbmV3bHktY3JlYXRlZCBmcmFtZSB1c2luZyBpdHMg c2VsZWN0ZWQtd2luZG93CithbmQgdGhhdCB3aW5kb3cncyBidWZmZXIuIgogICAoaW50ZXJh Y3RpdmUgImUiKQogICAoc2F2ZS1leGN1cnNpb24KICAgICA7OyBNYWtlIHN1cmUgdGhlIGRy b3AgdGFyZ2V0IGhhcyBwb3NpdGl2ZSBjby1vcmRzCkBAIC0xNDAsNiArMTQ3LDcgQEAgdzMy LWRyYWctbi1kcm9wCiAgICAgOzsgd29uJ3Qgd29yay4gIDxza3hAdGFyZGlzLmVkLmFjLnVr PgogICAgIChsZXQqICgod2luZG93IChwb3NuLXdpbmRvdyAoZXZlbnQtc3RhcnQgZXZlbnQp KSkKIAkgICAoY29vcmRzIChwb3NuLXgteSAoZXZlbnQtc3RhcnQgZXZlbnQpKSkKKyAgICAg ICAgICAgKGFyZyAoY2FyIChjZHIgKGNkciBldmVudCkpKSkKIAkgICAoeCAoY2FyIGNvb3Jk cykpCiAJICAgKHkgKGNkciBjb29yZHMpKSkKICAgICAgIChpZiAoYW5kICg+IHggMCkgKD4g eSAwKSkKQEAgLTE1MCwxMSArMTU4LDE0IEBAIHczMi1kcmFnLW4tZHJvcAogICAgICAgKHJh aXNlLWZyYW1lKQogICAgICAgKHNldHEgd2luZG93IChzZWxlY3RlZC13aW5kb3cpKQogCi0g ICAgICAoZG5kLWhhbmRsZS1tdWx0aXBsZS11cmxzCi0gICAgICAgd2luZG93Ci0gICAgICAg KG1hcGNhciAjJ3czMi1kcm9wcGVkLWZpbGUtdG8tdXJsCi0gICAgICAgICAgICAgICAoY2Fy IChjZHIgKGNkciBldmVudCkpKSkKLSAgICAgICAncHJpdmF0ZSkpKSkKKyAgICAgIDs7IGFy ZyAodGhlIHBheWxvYWQgb2YgdGhlIGV2ZW50KSBpcyBhIHN0cmluZyB3aGVuIHRoZSBkcm9w IGlzCisgICAgICA7OyB0ZXh0LCBhbmQgYSBsaXN0IG9mIHN0cmluZ3Mgd2hlbiB0aGUgZHJv cCBpcyBvbmUgb3IgbW9yZSBmaWxlcy4KKyAgICAgIChpZiAoc3RyaW5ncCBhcmcpCisgICAg ICAgICAgKGRuZC1pbnNlcnQtdGV4dCB3aW5kb3cgJ2NvcHkgYXJnKQorICAgICAgICAoZG5k LWhhbmRsZS1tdWx0aXBsZS11cmxzCisgICAgICAgICB3aW5kb3cKKyAgICAgICAgIChtYXBj YXIgIyd3MzItZHJvcHBlZC1maWxlLXRvLXVybCBhcmcpCisgICAgICAgICAncHJpdmF0ZSkp KSkpCiAKIChkZWZ1biB3MzItZHJhZy1uLWRyb3Atb3RoZXItZnJhbWUgKGV2ZW50KQogICAi RWRpdCB0aGUgZmlsZXMgbGlzdGVkIGluIHRoZSBkcmFnLW4tZHJvcCBFVkVOVCwgaW4gb3Ro ZXIgZnJhbWVzLgpkaWZmIC0tZ2l0IGEvc3JjL3czMmZucy5jIGIvc3JjL3czMmZucy5jCmlu ZGV4IDBhM2Y1YzM4YTU4Li5iM2QyNmI4NDFlNCAxMDA2NDQKLS0tIGEvc3JjL3czMmZucy5j CisrKyBiL3NyYy93MzJmbnMuYwpAQCAtMzQsNiArMzQsMTIgQEAgI2RlZmluZSBfV0lOMzJf V0lOTlQgMHgwNjAwCiAKICNpbmNsdWRlIDxjLWN0eXBlLmg+CiAKKyNkZWZpbmUgQ09CSk1B Q1JPUyAvKiBBc2sgZm9yIEMgZGVmaW5pdGlvbnMgZm9yIENPTS4gICovCisjaW5jbHVkZSA8 c2hsb2JqLmg+CisjaW5jbHVkZSA8b2xlaWRsLmg+CisjaW5jbHVkZSA8b2JqaWRsLmg+Cisj aW5jbHVkZSA8b2xlMi5oPgorCiAjaW5jbHVkZSAibGlzcC5oIgogI2luY2x1ZGUgInczMnRl cm0uaCIKICNpbmNsdWRlICJmcmFtZS5oIgpAQCAtMzU5LDYgKzM2NSw5IEBAICNkZWZpbmUg V1NfRVhfTk9BQ1RJVkFURSAweDA4MDAwMDAwTAogCiBzdGF0aWMgc3RydWN0IHczMl9kaXNw bGF5X2luZm8gKnczMl9kaXNwbGF5X2luZm9fZm9yX25hbWUgKExpc3BfT2JqZWN0KTsKIAor c3RhdGljIHZvaWQgbXlfcG9zdF9tc2cgKFczMk1zZyosIEhXTkQsIFVJTlQsIFdQQVJBTSwg TFBBUkFNKTsKK3N0YXRpYyB1bnNpZ25lZCBpbnQgdzMyX2dldF9tb2RpZmllcnMgKHZvaWQp OworCiAvKiBMZXQgdGhlIHVzZXIgc3BlY2lmeSBhIGRpc3BsYXkgd2l0aCBhIGZyYW1lLgog ICAgbmlsIHN0YW5kcyBmb3IgdGhlIHNlbGVjdGVkIGZyYW1lLS1vciwgaWYgdGhhdCBpcyBu b3QgYSB3MzIgZnJhbWUsCiAgICB0aGUgZmlyc3QgZGlzcGxheSBvbiB0aGUgbGlzdC4gICov CkBAIC0yNDY0LDYgKzI0NzMsMTgyIEBAIHczMl9jcmVhdGVoc2Nyb2xsYmFyIChzdHJ1Y3Qg ZnJhbWUgKmYsIHN0cnVjdCBzY3JvbGxfYmFyICogYmFyKQogICByZXR1cm4gaHduZDsKIH0K IAorLyogRnJvbSB0aGUgRFJPUEZJTEVTIHN0cnVjdCwgZXh0cmFjdCB0aGUgZmlsZW5hbWVz IGFuZCByZXR1cm4gYXMgYSBsaXN0CisgICBvZiBzdHJpbmdzLiAgKi8KK3N0YXRpYyBMaXNw X09iamVjdAorcHJvY2Vzc19kcm9wZmlsZXMgKERST1BGSUxFUyAqZmlsZXMpCit7CisgIGNo YXIgKnN0YXJ0X29mX2ZpbGVzID0gKGNoYXIgKikgZmlsZXMgKyBmaWxlcy0+cEZpbGVzOwor ICBjaGFyIGZpbGVuYW1lW01BWF9VVEY4X1BBVEhdOworICBMaXNwX09iamVjdCBsaXNwX2Zp bGVzID0gUW5pbDsKKworICBpZiAoZmlsZXMtPmZXaWRlKQorICAgIHsKKyAgICAgIFdDSEFS ICpwID0gKFdDSEFSICopIHN0YXJ0X29mX2ZpbGVzOworICAgICAgZm9yICg7ICpwOyBwICs9 IHdjc2xlbiAocCkgKyAxKQorCXsKKwkgIGZpbGVuYW1lX2Zyb21fdXRmMTYocCwgZmlsZW5h bWUpOworCSAgbGlzcF9maWxlcyA9IEZjb25zIChERUNPREVfRklMRSAoYnVpbGRfdW5pYnl0 ZV9zdHJpbmcgKGZpbGVuYW1lKSksCisJCQkgICAgICBsaXNwX2ZpbGVzICk7CisJfQorICAg IH0KKyAgZWxzZQorICAgIHsKKyAgICAgIGNoYXIgKnAgPSBzdGFydF9vZl9maWxlczsKKyAg ICAgIGZvciAoOyAqcDsgcCArPSBzdHJsZW4ocCkgKyAxKQorCXsKKwkgIGZpbGVuYW1lX2Zy b21fYW5zaSAocCwgZmlsZW5hbWUpOworCSAgbGlzcF9maWxlcyA9IEZjb25zIChERUNPREVf RklMRSAoYnVpbGRfdW5pYnl0ZV9zdHJpbmcgKGZpbGVuYW1lKSksCisJCQkgICAgICBsaXNw X2ZpbGVzICk7CisJfQorICAgIH0KKyAgcmV0dXJuIGxpc3BfZmlsZXM7Cit9CisKKworLyog VGhpcyBmdW5jdGlvbiBjYW4gYmUgY2FsbGVkIE9OTFkgYmV0d2VlbiBjYWxscyB0bworICAg YmxvY2tfaW5wdXQvdW5ibG9ja19pbnB1dC4gIEl0IGlzIHVzZWQgaW4gdzMyX3JlYWRfc29j a2V0LiAgKi8KK0xpc3BfT2JqZWN0Cit3MzJfcHJvY2Vzc19kbmRfZGF0YSAoaW50IGZvcm1h dCwgdm9pZCAqaEdsb2JhbCkKK3sKKyAgTGlzcF9PYmplY3QgcmVzdWx0ID0gUW5pbDsKKyAg SEdMT0JBTCBoZyA9IChIR0xPQkFMKSBoR2xvYmFsOworCisgIHN3aXRjaCAoZm9ybWF0KQor ICAgIHsKKyAgICBjYXNlIENGX0hEUk9QOgorICAgICAgeworCURST1BGSUxFUyAqZmlsZXMg PSAoRFJPUEZJTEVTICopIEdsb2JhbExvY2sgKGhnKTsKKwlpZiAoZmlsZXMpCisJICByZXN1 bHQgPSBwcm9jZXNzX2Ryb3BmaWxlcyAoZmlsZXMpOworCUdsb2JhbFVubG9jayAoaGcpOwor CWJyZWFrOworICAgICAgfQorICAgIGNhc2UgQ0ZfVU5JQ09ERVRFWFQ6CisgICAgICB7CisJ V0NIQVIgKnRleHQgPSAoV0NIQVIgKikgR2xvYmFsTG9jayAoaGcpOworCXJlc3VsdCA9IGZy b21fdW5pY29kZV9idWZmZXIgKHRleHQpOworCUdsb2JhbFVubG9jayAoaGcpOworCWJyZWFr OworICAgICAgfQorICAgIGNhc2UgQ0ZfVEVYVDoKKyAgICAgIHsKKwljaGFyICp0ZXh0ID0g KGNoYXIgKikgR2xvYmFsTG9jayAoaGcpOworCXJlc3VsdCA9IERFQ09ERV9TWVNURU0gKGJ1 aWxkX3VuaWJ5dGVfc3RyaW5nICh0ZXh0KSk7CisJR2xvYmFsVW5sb2NrIChoZyk7CisJYnJl YWs7CisgICAgICB9CisgICAgfQorCisgIEdsb2JhbEZyZWUgKGhnKTsKKworICByZXR1cm4g cmVzdWx0OworfQorCitzdHJ1Y3QgdzMyX2Ryb3BfdGFyZ2V0IHsKKyAgLyogaV9kcm9wX3Rh cmdldCBtdXN0IGJlIHRoZSBmaXJzdCBtZW1iZXIuICAqLworICBJRHJvcFRhcmdldCBpX2Ry b3BfdGFyZ2V0OworICBIV05EIGh3bmQ7Cit9OworCitzdGF0aWMgSFJFU1VMVCBTVERNRVRI T0RDQUxMVFlQRQordzMyX2Ryb3BfdGFyZ2V0X1F1ZXJ5SW50ZXJmYWNlIChJRHJvcFRhcmdl dCAqdCwgUkVGSUlEIHJpLCB2b2lkICoqcikKK3sKKyAgcmV0dXJuIEVfTk9JTlRFUkZBQ0U7 Cit9CisKK3N0YXRpYyBVTE9ORyBTVERNRVRIT0RDQUxMVFlQRQordzMyX2Ryb3BfdGFyZ2V0 X0FkZFJlZiAoSURyb3BUYXJnZXQgKlRoaXMpCit7CisgIHJldHVybiAxOworfQorCitzdGF0 aWMgVUxPTkcgU1RETUVUSE9EQ0FMTFRZUEUKK3czMl9kcm9wX3RhcmdldF9SZWxlYXNlIChJ RHJvcFRhcmdldCAqVGhpcykKK3sKKyAgc3RydWN0IHczMl9kcm9wX3RhcmdldCAqdGFyZ2V0 ID0gKHN0cnVjdCB3MzJfZHJvcF90YXJnZXQgKiApIFRoaXM7CisgIGZyZWUgKHRhcmdldC0+ aV9kcm9wX3RhcmdldC5scFZ0YmwpOworICBmcmVlICh0YXJnZXQpOworICByZXR1cm4gMDsK K30KKworc3RhdGljIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUKK3czMl9kcm9wX3Rhcmdl dF9EcmFnRW50ZXIgKElEcm9wVGFyZ2V0ICpUaGlzLCBJRGF0YU9iamVjdCAqcERhdGFPYmos CisJCQkgICBEV09SRCBncmZLZXlTdGF0ZSwgUE9JTlRMIHB0LCBEV09SRCAqcGR3RWZmZWN0 KQoreworICAvKiBQb3NzaWJsZSAnZWZmZWN0JyB2YWx1ZXMgYXJlIENPUFksIE1PVkUsIExJ Tksgb3IgTk9ORS4gIFRoaXMgY2hvaWNlCisgICAgIGNoYW5nZXMgdGhlIG1vdXNlIHBvaW50 ZXIgc2hhcGUgdG8gaW5mb3JtIHRoZSB1c2VyIG9mIHdoYXQgd2lsbAorICAgICBoYXBwZW4g b24gZHJvcC4gIFdlIHNlbmQgQ09QWSBiZWNhdXNlIG91ciB1c2UgY2FzZXMgZG9uJ3QgbW9k aWZ5CisgICAgIG9yIGxpbmsgdG8gdGhlIG9yaWdpbmFsIGRhdGEuICAqLworICAqcGR3RWZm ZWN0ID0gRFJPUEVGRkVDVF9DT1BZOworICByZXR1cm4gU19PSzsKK30KKworc3RhdGljIEhS RVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUKK3czMl9kcm9wX3RhcmdldF9EcmFnT3ZlciAoSURy b3BUYXJnZXQgKlRoaXMsIERXT1JEIGdyZktleVN0YXRlLCBQT0lOVEwgcHQsCisJCQkgIERX T1JEICpwZHdFZmZlY3QpCit7CisgIC8qIFNlZSBjb21tZW50IGluIHczMl9kcm9wX3Rhcmdl dF9EcmFnRW50ZXIuICAqLworICAqcGR3RWZmZWN0ID0gRFJPUEVGRkVDVF9DT1BZOworICBy ZXR1cm4gU19PSzsKK30KKworc3RhdGljIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUKK3cz Ml9kcm9wX3RhcmdldF9EcmFnTGVhdmUgKElEcm9wVGFyZ2V0ICpUaGlzKQoreworICByZXR1 cm4gU19PSzsKK30KKworc3RhdGljIEhHTE9CQUwgdzMyX3RyeV9nZXRfZGF0YSAoSURhdGFP YmplY3QgKnBEYXRhT2JqLCBpbnQgZm9ybWF0KQoreworICBGT1JNQVRFVEMgZm9ybWF0ZXRj ID0geyBmb3JtYXQsIE5VTEwsIERWQVNQRUNUX0NPTlRFTlQsIC0xLAorCQkJICBUWU1FRF9I R0xPQkFMIH07CisgIFNUR01FRElVTSBzdGdtZWRpdW07CisgIEhSRVNVTFQgciA9IElEYXRh T2JqZWN0X0dldERhdGEgKHBEYXRhT2JqLCAmZm9ybWF0ZXRjLCAmc3RnbWVkaXVtKTsKKyAg aWYgKFNVQ0NFRURFRCAocikpCisgICAgeworICAgICAgaWYgKHN0Z21lZGl1bS50eW1lZCA9 PSBUWU1FRF9IR0xPQkFMKQorCXJldHVybiBzdGdtZWRpdW0uaEdsb2JhbDsKKyAgICAgIFJl bGVhc2VTdGdNZWRpdW0gKCZzdGdtZWRpdW0pOworICAgIH0KKyAgcmV0dXJuIE5VTEw7Cit9 CisKK3N0YXRpYyBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFCit3MzJfZHJvcF90YXJnZXRf RHJvcCAoSURyb3BUYXJnZXQgKlRoaXMsIElEYXRhT2JqZWN0ICpwRGF0YU9iaiwKKwkJICAg ICAgRFdPUkQgZ3JmS2V5U3RhdGUsIFBPSU5UTCBwdCwgRFdPUkQgKnBkd0VmZmVjdCkKK3sK KyAgc3RydWN0IHczMl9kcm9wX3RhcmdldCAqdGFyZ2V0ID0gKHN0cnVjdCB3MzJfZHJvcF90 YXJnZXQgKilUaGlzOworICAqcGR3RWZmZWN0ID0gRFJPUEVGRkVDVF9DT1BZOworCisgIFcz Mk1zZyBtc2cgPSB7MH07CisgIG1zZy5kd01vZGlmaWVycyA9IHczMl9nZXRfbW9kaWZpZXJz KCk7CisgIG1zZy5tc2cudGltZSA9IEdldE1lc3NhZ2VUaW1lICgpOworICBtc2cubXNnLnB0 LnggPSBwdC54OworICBtc2cubXNnLnB0LnkgPSBwdC55OworCisgIGludCBmb3JtYXQgPSBD Rl9IRFJPUDsKKyAgSEdMT0JBTCBoR2xvYmFsID0gdzMyX3RyeV9nZXRfZGF0YSAocERhdGFP YmosIGZvcm1hdCk7CisKKyAgaWYgKCFoR2xvYmFsKQorICAgIHsKKyAgICAgIGZvcm1hdCA9 IENGX1VOSUNPREVURVhUOworICAgICAgaEdsb2JhbCA9IHczMl90cnlfZ2V0X2RhdGEgKHBE YXRhT2JqLCBmb3JtYXQpOworICAgIH0KKworICBpZiAoIWhHbG9iYWwpCisgICAgeworICAg ICAgZm9ybWF0ID0gQ0ZfVEVYVDsKKyAgICAgIGhHbG9iYWwgPSB3MzJfdHJ5X2dldF9kYXRh IChwRGF0YU9iaiwgZm9ybWF0KTsKKyAgICB9CisKKyAgaWYgKGhHbG9iYWwpCisgICAgICBt eV9wb3N0X21zZyAoJm1zZywgdGFyZ2V0LT5od25kLCBXTV9FTUFDU19EUk9QLCBmb3JtYXQs CisJCSAgIChMUEFSQU0pIGhHbG9iYWwpOworCisgIHJldHVybiBTX09LOworfQorCiBzdGF0 aWMgdm9pZAogdzMyX2NyZWF0ZXdpbmRvdyAoc3RydWN0IGZyYW1lICpmLCBpbnQgKmNvb3Jk cykKIHsKQEAgLTI1NDgsNyArMjczMywzMCBAQCB3MzJfY3JlYXRld2luZG93IChzdHJ1Y3Qg ZnJhbWUgKmYsIGludCAqY29vcmRzKQogICAgICAgU2V0V2luZG93TG9uZyAoaHduZCwgV05E X0JBQ0tHUk9VTkRfSU5ERVgsIEZSQU1FX0JBQ0tHUk9VTkRfUElYRUwgKGYpKTsKIAogICAg ICAgLyogRW5hYmxlIGRyYWctbi1kcm9wLiAgKi8KLSAgICAgIERyYWdBY2NlcHRGaWxlcyAo aHduZCwgVFJVRSk7CisgICAgICBzdHJ1Y3QgdzMyX2Ryb3BfdGFyZ2V0ICpkcm9wX3Rhcmdl dCA9CisJbWFsbG9jIChzaXplb2YgKHN0cnVjdCB3MzJfZHJvcF90YXJnZXQpKTsKKworICAg ICAgaWYgKGRyb3BfdGFyZ2V0ICE9IE5VTEwpCisJeworCSAgSURyb3BUYXJnZXRWdGJsICp2 dGJsID0gbWFsbG9jIChzaXplb2YgKElEcm9wVGFyZ2V0VnRibCkpOworCSAgaWYgKHZ0Ymwg IT0gTlVMTCkKKwkgICAgeworCSAgICAgIGRyb3BfdGFyZ2V0LT5od25kID0gaHduZDsKKwkg ICAgICBkcm9wX3RhcmdldC0+aV9kcm9wX3RhcmdldC5scFZ0YmwgPSB2dGJsOworCSAgICAg IHZ0YmwtPlF1ZXJ5SW50ZXJmYWNlID0gdzMyX2Ryb3BfdGFyZ2V0X1F1ZXJ5SW50ZXJmYWNl OworCSAgICAgIHZ0YmwtPkFkZFJlZiA9IHczMl9kcm9wX3RhcmdldF9BZGRSZWY7CisJICAg ICAgdnRibC0+UmVsZWFzZSA9IHczMl9kcm9wX3RhcmdldF9SZWxlYXNlOworCSAgICAgIHZ0 YmwtPkRyYWdFbnRlciA9IHczMl9kcm9wX3RhcmdldF9EcmFnRW50ZXI7CisJICAgICAgdnRi bC0+RHJhZ092ZXIgPSB3MzJfZHJvcF90YXJnZXRfRHJhZ092ZXI7CisJICAgICAgdnRibC0+ RHJhZ0xlYXZlID0gdzMyX2Ryb3BfdGFyZ2V0X0RyYWdMZWF2ZTsKKwkgICAgICB2dGJsLT5E cm9wID0gdzMyX2Ryb3BfdGFyZ2V0X0Ryb3A7CisJICAgICAgUmVnaXN0ZXJEcmFnRHJvcCAo aHduZCwgJmRyb3BfdGFyZ2V0LT5pX2Ryb3BfdGFyZ2V0KTsKKwkgICAgfQorCSAgZWxzZQor CSAgICB7CisJICAgICAgZnJlZSAoZHJvcF90YXJnZXQpOworCSAgICB9CisJfQogCiAgICAg ICAvKiBFbmFibGUgc3lzdGVtIGxpZ2h0L2RhcmsgdGhlbWUuICAqLwogICAgICAgdzMyX2Fw cGx5dGhlbWUgKGh3bmQpOwpAQCAtMzM5OSw2ICszNjA3LDcgQEAgI2RlZmluZSBNKG1zZykg eyBtc2csICMgbXNnIH0KICAgICAgIE0gKFdNX0VNQUNTX1BBSU5UKSwKICAgICAgIE0gKFdN X0VNQUNTX0lNRV9TVEFUVVMpLAogICAgICAgTSAoV01fQ0hBUiksCisgICAgICBNIChXTV9F TUFDU19EUk9QKSwKICN1bmRlZiBNCiAgICAgICB7IDAsIDAgfQogICB9OwpAQCAtMzQ2NSwx MyArMzY3NCwxNCBAQCB3MzJfbXNnX3B1bXAgKGRlZmVycmVkX21zZyAqIG1zZ19idWYpCiAJ ICAgICAgLyogUHJvZHVjZWQgYnkgY29tcGxldGVfZGVmZXJyZWRfbXNnOyBqdXN0IGlnbm9y ZS4gICovCiAJICAgICAgYnJlYWs7CiAJICAgIGNhc2UgV01fRU1BQ1NfQ1JFQVRFV0lORE9X OgotCSAgICAgIC8qIEluaXRpYWxpemUgQ09NIGZvciB0aGlzIHdpbmRvdy4gRXZlbiB0aG91 Z2ggd2UgZG9uJ3QgdXNlIGl0LAotCQkgc29tZSB0aGlyZCBwYXJ0eSBzaGVsbCBleHRlbnNp b25zIGNhbiBjYXVzZSBpdCB0byBiZSB1c2VkIGluCisJICAgICAgLyogSW5pdGlhbGl6ZSBD T00gZm9yIHRoaXMgd2luZG93LiAgTmVlZGVkIGZvciBSZWdpc3RlckRyYWdEcm9wLgorCQkg U29tZSB0aGlyZCBwYXJ0eSBzaGVsbCBleHRlbnNpb25zIGNhbiBjYXVzZSBpdCB0byBiZSB1 c2VkIGluCiAJCSBzeXN0ZW0gZGlhbG9ncywgd2hpY2ggY2F1c2VzIGEgY3Jhc2ggaWYgaXQg aXMgbm90IGluaXRpYWxpemVkLgogCQkgVGhpcyBpcyBhIGtub3duIGJ1ZyBpbiBXaW5kb3dz LCB3aGljaCB3YXMgZml4ZWQgbG9uZyBhZ28sIGJ1dAogCQkgdGhlIHBhdGNoIGZvciBYUCBp cyBub3QgcHVibGljbHkgYXZhaWxhYmxlIHVudGlsIFhQIFNQMywKIAkJIGFuZCBvbGRlciB2 ZXJzaW9ucyB3aWxsIG5ldmVyIGJlIHBhdGNoZWQuICAqLwotCSAgICAgIENvSW5pdGlhbGl6 ZSAoTlVMTCk7CisJICAgICAgT2xlSW5pdGlhbGl6ZSAoTlVMTCk7CisKIAkgICAgICB3MzJf Y3JlYXRld2luZG93ICgoc3RydWN0IGZyYW1lICopIG1zZy53UGFyYW0sCiAJCQkJKGludCAq KSBtc2cubFBhcmFtKTsKIAkgICAgICBpZiAoIVBvc3RUaHJlYWRNZXNzYWdlIChkd01haW5U aHJlYWRJZCwgV01fRU1BQ1NfRE9ORSwgMCwgMCkpCkBAIC01MTA2LDcgKzUzMTYsNiBAQCAj ZGVmaW5lIE1PVVNFRVZFTlRGX0ZST01UT1VDSCAweEZGNTE1NzAwCiAgICAgICByZXR1cm4g MDsKIAogICAgIGNhc2UgV01fTU9VU0VXSEVFTDoKLSAgICBjYXNlIFdNX0RST1BGSUxFUzoK ICAgICAgIHdtc2cuZHdNb2RpZmllcnMgPSB3MzJfZ2V0X21vZGlmaWVycyAoKTsKICAgICAg IG15X3Bvc3RfbXNnICgmd21zZywgaHduZCwgbXNnLCB3UGFyYW0sIGxQYXJhbSk7CiAgICAg ICBzaWduYWxfdXNlcl9pbnB1dCAoKTsKQEAgLTU1OTcsNyArNTgwNiw3IEBAICNkZWZpbmUg V01fVE9VQ0ggNTc2CiAgICAgICB9CiAKICAgICBjYXNlIFdNX0VNQUNTX0RFU1RST1lXSU5E T1c6Ci0gICAgICBEcmFnQWNjZXB0RmlsZXMgKChIV05EKSB3UGFyYW0sIEZBTFNFKTsKKyAg ICAgIFJldm9rZURyYWdEcm9wICgoSFdORCkgd1BhcmFtKTsKICAgICAgIHJldHVybiBEZXN0 cm95V2luZG93ICgoSFdORCkgd1BhcmFtKTsKIAogICAgIGNhc2UgV01fRU1BQ1NfSElERV9D QVJFVDoKZGlmZiAtLWdpdCBhL3NyYy93MzJ0ZXJtLmMgYi9zcmMvdzMydGVybS5jCmluZGV4 IDYyMDM3ZTNiMmNkLi4zYTYyNzMwODEzNyAxMDA2NDQKLS0tIGEvc3JjL3czMnRlcm0uYwor KysgYi9zcmMvdzMydGVybS5jCkBAIC0zNTc2LDgxICszNTc2LDYgQEAgdzMyX2NvbnN0cnVj dF9tb3VzZV93aGVlbCAoc3RydWN0IGlucHV0X2V2ZW50ICpyZXN1bHQsIFczMk1zZyAqbXNn LAogICByZXR1cm4gUW5pbDsKIH0KIAotc3RhdGljIExpc3BfT2JqZWN0Ci13MzJfY29uc3Ry dWN0X2RyYWdfbl9kcm9wIChzdHJ1Y3QgaW5wdXRfZXZlbnQgKnJlc3VsdCwgVzMyTXNnICpt c2csCi0gICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgZnJhbWUgKmYpCi17Ci0g IExpc3BfT2JqZWN0IGZpbGVzOwotICBMaXNwX09iamVjdCBmcmFtZTsKLSAgSERST1AgaGRy b3A7Ci0gIFBPSU5UIHA7Ci0gIFdPUkQgbnVtX2ZpbGVzOwotICB3Y2hhcl90IG5hbWVfd1tN QVhfUEFUSF07Ci0jaWZkZWYgTlRHVUlfVU5JQ09ERQotICBjb25zdCBpbnQgdXNlX3VuaWNv ZGUgPSAxOwotI2Vsc2UKLSAgaW50IHVzZV91bmljb2RlID0gdzMyX3VuaWNvZGVfZmlsZW5h bWVzOwotICBjaGFyIG5hbWVfYVtNQVhfUEFUSF07Ci0gIGNoYXIgZmlsZVtNQVhfVVRGOF9Q QVRIXTsKLSNlbmRpZgotICBpbnQgaTsKLQotICByZXN1bHQtPmtpbmQgPSBEUkFHX05fRFJP UF9FVkVOVDsKLSAgcmVzdWx0LT5jb2RlID0gMDsKLSAgcmVzdWx0LT50aW1lc3RhbXAgPSBt c2ctPm1zZy50aW1lOwotICByZXN1bHQtPm1vZGlmaWVycyA9IG1zZy0+ZHdNb2RpZmllcnM7 Ci0KLSAgaGRyb3AgPSAoSERST1ApIG1zZy0+bXNnLndQYXJhbTsKLSAgRHJhZ1F1ZXJ5UG9p bnQgKGhkcm9wLCAmcCk7Ci0KLSNpZiAwCi0gIHAueCA9IExPV09SRCAobXNnLT5tc2cubFBh cmFtKTsKLSAgcC55ID0gSElXT1JEIChtc2ctPm1zZy5sUGFyYW0pOwotICBTY3JlZW5Ub0Ns aWVudCAobXNnLT5tc2cuaHduZCwgJnApOwotI2VuZGlmCi0KLSAgWFNFVElOVCAocmVzdWx0 LT54LCBwLngpOwotICBYU0VUSU5UIChyZXN1bHQtPnksIHAueSk7Ci0KLSAgbnVtX2ZpbGVz ID0gRHJhZ1F1ZXJ5RmlsZSAoaGRyb3AsIDB4RkZGRkZGRkYsIE5VTEwsIDApOwotICBmaWxl cyA9IFFuaWw7Ci0KLSAgZm9yIChpID0gMDsgaSA8IG51bV9maWxlczsgaSsrKQotICAgIHsK LSAgICAgIGlmICh1c2VfdW5pY29kZSkKLQl7Ci0JICBlYXNzZXJ0IChEcmFnUXVlcnlGaWxl VyAoaGRyb3AsIGksIE5VTEwsIDApIDwgTUFYX1BBVEgpOwotCSAgLyogSWYgRHJhZ1F1ZXJ5 RmlsZSByZXR1cm5zIHplcm8sIGl0IGZhaWxlZCB0byBmZXRjaCBhIGZpbGUKLQkgICAgIG5h bWUuICAqLwotCSAgaWYgKERyYWdRdWVyeUZpbGVXIChoZHJvcCwgaSwgbmFtZV93LCBNQVhf UEFUSCkgPT0gMCkKLQkgICAgY29udGludWU7Ci0jaWZkZWYgTlRHVUlfVU5JQ09ERQotCSAg ZmlsZXMgPSBGY29ucyAoZnJvbV91bmljb2RlX2J1ZmZlciAobmFtZV93KSwgZmlsZXMpOwot I2Vsc2UKLQkgIGZpbGVuYW1lX2Zyb21fdXRmMTYgKG5hbWVfdywgZmlsZSk7Ci0JICBmaWxl cyA9IEZjb25zIChERUNPREVfRklMRSAoYnVpbGRfdW5pYnl0ZV9zdHJpbmcgKGZpbGUpKSwg ZmlsZXMpOwotI2VuZGlmIC8qIE5UR1VJX1VOSUNPREUgKi8KLQl9Ci0jaWZuZGVmIE5UR1VJ X1VOSUNPREUKLSAgICAgIGVsc2UKLQl7Ci0JICBlYXNzZXJ0IChEcmFnUXVlcnlGaWxlQSAo aGRyb3AsIGksIE5VTEwsIDApIDwgTUFYX1BBVEgpOwotCSAgaWYgKERyYWdRdWVyeUZpbGVB IChoZHJvcCwgaSwgbmFtZV9hLCBNQVhfUEFUSCkgPT0gMCkKLQkgICAgY29udGludWU7Ci0J ICBmaWxlbmFtZV9mcm9tX2Fuc2kgKG5hbWVfYSwgZmlsZSk7Ci0JICBmaWxlcyA9IEZjb25z IChERUNPREVfRklMRSAoYnVpbGRfdW5pYnl0ZV9zdHJpbmcgKGZpbGUpKSwgZmlsZXMpOwot CX0KLSNlbmRpZgotICAgIH0KLQotICBEcmFnRmluaXNoIChoZHJvcCk7Ci0KLSAgWFNFVEZS QU1FIChmcmFtZSwgZik7Ci0gIHJlc3VsdC0+ZnJhbWVfb3Jfd2luZG93ID0gZnJhbWU7Ci0g IHJlc3VsdC0+YXJnID0gZmlsZXM7Ci0gIHJldHVybiBRbmlsOwotfQotCiAMCiAjaWYgSEFW RV9XMzJOT1RJRlkKIApAQCAtNTY4MiwxMSArNTYwNywyNiBAQCB3MzJfcmVhZF9zb2NrZXQg KHN0cnVjdCB0ZXJtaW5hbCAqdGVybWluYWwsCiAJICB9CiAJICBicmVhazsKIAotCWNhc2Ug V01fRFJPUEZJTEVTOgotCSAgZiA9IHczMl93aW5kb3dfdG9fZnJhbWUgKGRweWluZm8sIG1z Zy5tc2cuaHduZCk7CisJY2FzZSBXTV9FTUFDU19EUk9QOgorCSAgeworCSAgICBpbnQgZm9y bWF0ID0gbXNnLm1zZy53UGFyYW07CisJICAgIExpc3BfT2JqZWN0IGRyb3Bfb2JqZWN0ID0K KwkgICAgICB3MzJfcHJvY2Vzc19kbmRfZGF0YSAoZm9ybWF0LCAodm9pZCAqKSBtc2cubXNn LmxQYXJhbSk7CiAKLQkgIGlmIChmKQotCSAgICB3MzJfY29uc3RydWN0X2RyYWdfbl9kcm9w ICgmaW5ldiwgJm1zZywgZik7CisJICAgIGYgPSB3MzJfd2luZG93X3RvX2ZyYW1lIChkcHlp bmZvLCBtc2cubXNnLmh3bmQpOworCSAgICBpZiAoIWYgfHwgTklMUCAoZHJvcF9vYmplY3Qp KQorCSAgICAgIGJyZWFrOworCisJICAgIFhTRVRGUkFNRSAoaW5ldi5mcmFtZV9vcl93aW5k b3csIGYpOworCSAgICBpbmV2LmtpbmQgPSBEUkFHX05fRFJPUF9FVkVOVDsKKwkgICAgaW5l di5jb2RlID0gMDsKKwkgICAgaW5ldi50aW1lc3RhbXAgPSBtc2cubXNnLnRpbWU7CisJICAg IGluZXYubW9kaWZpZXJzID0gbXNnLmR3TW9kaWZpZXJzOworCSAgICBTY3JlZW5Ub0NsaWVu dCAobXNnLm1zZy5od25kLCAmbXNnLm1zZy5wdCk7CisJICAgIFhTRVRJTlQgKGluZXYueCwg bXNnLm1zZy5wdC54KTsKKwkgICAgWFNFVElOVCAoaW5ldi55LCBtc2cubXNnLnB0LnkpOwor CSAgICBpbmV2LmFyZyA9IGRyb3Bfb2JqZWN0OworCSAgfQogCSAgYnJlYWs7CiAKIAljYXNl IFdNX0hTQ1JPTEw6CmRpZmYgLS1naXQgYS9zcmMvdzMydGVybS5oIGIvc3JjL3czMnRlcm0u aAppbmRleCA0N2JlNTQyZjU3MC4uMzllMjI2MmUyYTggMTAwNjQ0Ci0tLSBhL3NyYy93MzJ0 ZXJtLmgKKysrIGIvc3JjL3czMnRlcm0uaApAQCAtMjcyLDYgKzI3Miw3IEBAICNkZWZpbmUg Q1BfREVGQVVMVCAxMDA0CiAKIC8qIHczMmZucy5jICovCiBleHRlcm4gdm9pZCB3MzJfZGVm YXVsdF9mb250X3BhcmFtZXRlciAoc3RydWN0IGZyYW1lKiBmLCBMaXNwX09iamVjdCBwYXJt cyk7CitleHRlcm4gTGlzcF9PYmplY3QgdzMyX3Byb2Nlc3NfZG5kX2RhdGEgKGludCBmb3Jt YXQsIHZvaWQgKnBEYXRhT2JqKTsKIAogDAogI2RlZmluZSBQSVhfVFlQRSBDT0xPUlJFRgpA QCAtNzEwLDcgKzcxMSw4IEBAICNkZWZpbmUgV01fRU1BQ1NfQlJJTkdUT1RPUCAgICAgICAg ICAgIChXTV9FTUFDU19TVEFSVCArIDIzKQogI2RlZmluZSBXTV9FTUFDU19JTlBVVF9SRUFE WSAgICAgICAgICAgKFdNX0VNQUNTX1NUQVJUICsgMjQpCiAjZGVmaW5lIFdNX0VNQUNTX0ZJ TEVOT1RJRlkgICAgICAgICAgICAoV01fRU1BQ1NfU1RBUlQgKyAyNSkKICNkZWZpbmUgV01f RU1BQ1NfSU1FX1NUQVRVUyAgICAgICAgICAgIChXTV9FTUFDU19TVEFSVCArIDI2KQotI2Rl ZmluZSBXTV9FTUFDU19FTkQgICAgICAgICAgICAgICAgICAgKFdNX0VNQUNTX1NUQVJUICsg MjcpCisjZGVmaW5lIFdNX0VNQUNTX0RST1AgICAgICAgICAgICAgICAgICAoV01fRU1BQ1Nf U1RBUlQgKyAyNykKKyNkZWZpbmUgV01fRU1BQ1NfRU5EICAgICAgICAgICAgICAgICAgIChX TV9FTUFDU19TVEFSVCArIDI4KQogCiAjZGVmaW5lIFdORF9GT05UV0lEVEhfSU5ERVggICAg KDApCiAjZGVmaW5lIFdORF9MSU5FSEVJR0hUX0lOREVYICAgKDQpCi0tIAoyLjM1LjEud2lu ZG93cy4yCgo= --------------ptHQMIPuBnzjxYlYp6zYY9e2-- From debbugs-submit-bounces@debbugs.gnu.org Sun Oct 06 02:10:26 2024 Received: (at 3468) by debbugs.gnu.org; 6 Oct 2024 06:10:26 +0000 Received: from localhost ([127.0.0.1]:39964 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sxKTK-0002VS-8b for submit@debbugs.gnu.org; Sun, 06 Oct 2024 02:10:26 -0400 Received: from eggs.gnu.org ([209.51.188.92]:41420) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sxKTH-0002VD-Ui for 3468@debbugs.gnu.org; Sun, 06 Oct 2024 02:10:25 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sxKT6-0001Cy-VM; Sun, 06 Oct 2024 02:10:13 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=PJVbao2qTYkd4J8ME5cXzfMc0afgM+AwH23f9MvFMm4=; b=YdeUid4IqaaKLYKjXRl/ HqZZ9tzv6jsbpwYxS8LgnsF7vVblRqqWYgXCDNbqllW5aM26GZmtQlH9oP9MzCUVDKePYX/+UVyPH PHSSJSEYGMO/MKJelx8M5kqPn0a1ioI7qlCh8NZ5xYrqIXdaI69Pqhp480ckR+byRXBBDL7knN4i/ Y7P8+rQYkqe26yTgwowHxCPGGqWyms7nVhiUvd7B8/oLJTVX428nIx9/FNcFtaetORpVhe6evgX48 FwulF3ihfcQhhydTqlQdVQkEN6bgDlZ5sk+F6xEYlI4xIbt00zAeXI9TcCZGNsQcUBh/n698kbFnu IUAgm8RS2OMG4A==; Date: Sun, 06 Oct 2024 09:10:12 +0300 Message-Id: <86msjhvk1n.fsf@gnu.org> From: Eli Zaretskii To: Cecilio Pardo In-Reply-To: <258ce0b8-95b3-4e39-ba52-fc007326c891@imayhem.com> (message from Cecilio Pardo on Sat, 5 Oct 2024 23:41:55 +0200) Subject: Re: bug#3468: drag and drop text References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> <86ed4ux0xj.fsf@gnu.org> <86a5fiwx3e.fsf@gnu.org> <867camwwx8.fsf@gnu.org> <258ce0b8-95b3-4e39-ba52-fc007326c891@imayhem.com> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 3468 Cc: 3468@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: -3.3 (---) > Date: Sat, 5 Oct 2024 23:41:55 +0200 > Cc: 3468@debbugs.gnu.org > From: Cecilio Pardo > > Looking at the manual, in the "Drag and Drop" chapter it says: > > > It can be difficult to scroll a window or determine where dropped > > text will be inserted while dragging text onto an Emacs window. > > Setting the option ‘dnd-indicate-insertion-point’ to a non-‘nil’ value > > makes point move to the location any dropped text will be inserted > > when the mouse moves in a window during drag, and setting > > ‘dnd-scroll-margin’ to an integer value causes a window to be scrolled > > if the mouse moves within that many lines of the top or bottom of the > > window during drag. > > This should be implemented on Windows too, but it will take me some > time. Maybe you prefer to wait before installing the changes. Up to you. From where I stand, we can install what you have now, and add support for the above as a separate changeset. > Also, do you think the manual should be updated too? If the manual becomes inaccurate or incomplete with your changes, then yes, of course. From debbugs-submit-bounces@debbugs.gnu.org Mon Oct 07 06:28:36 2024 Received: (at 3468) by debbugs.gnu.org; 7 Oct 2024 10:28:36 +0000 Received: from localhost ([127.0.0.1]:44992 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sxkyi-0002yQ-3K for submit@debbugs.gnu.org; Mon, 07 Oct 2024 06:28:36 -0400 Received: from mail.imayhem.com ([82.223.54.191]:53663 helo=zealous-pike.82-223-54-191.plesk.page) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sxkye-0002y1-GV for 3468@debbugs.gnu.org; Mon, 07 Oct 2024 06:28:34 -0400 Received: from [10.0.12.77] (66.red-2-136-43.staticip.rima-tde.net [2.136.43.66]) by zealous-pike.82-223-54-191.plesk.page (Postfix) with ESMTPSA id BA5DF80166; Mon, 7 Oct 2024 10:28:19 +0000 (UTC) Authentication-Results: zealous-pike.82-223-54-191.plesk.page; spf=pass (sender IP is 2.136.43.66) smtp.mailfrom=cpardo@imayhem.com smtp.helo=[10.0.12.77] Received-SPF: pass (zealous-pike.82-223-54-191.plesk.page: connection is authenticated) Message-ID: <39db8246-18f9-44ea-8678-925af995549f@imayhem.com> Date: Mon, 7 Oct 2024 12:28:20 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#3468: drag and drop text To: Eli Zaretskii References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> <86ed4ux0xj.fsf@gnu.org> <86a5fiwx3e.fsf@gnu.org> <867camwwx8.fsf@gnu.org> <258ce0b8-95b3-4e39-ba52-fc007326c891@imayhem.com> <86msjhvk1n.fsf@gnu.org> Content-Language: es-ES From: Cecilio Pardo In-Reply-To: <86msjhvk1n.fsf@gnu.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 3468 Cc: 3468@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 (-) On 06/10/2024 8:10, Eli Zaretskii wrote: >> This should be implemented on Windows too, but it will take me some >> time. Maybe you prefer to wait before installing the changes. > > Up to you. From where I stand, we can install what you have now, and > add support for the above as a separate changeset. Let's do this then. >> Also, do you think the manual should be updated too? > > If the manual becomes inaccurate or incomplete with your changes, then > yes, of course. I was thinking about changing this: The XDND and Motif drag and drop protocols, and the old KDE 1.x protocol, are currently supported. To this: The XDND and Motif drag and drop protocols, and the old KDE 1.x protocol, are currently supported. There is also support on MS-Windows. And adding later: The 'dnd-indicate-insertion-point’ and ‘dnd-scroll-margin’ variables are not supported on MS-Windows. From debbugs-submit-bounces@debbugs.gnu.org Mon Oct 07 08:00:26 2024 Received: (at 3468) by debbugs.gnu.org; 7 Oct 2024 12:00:26 +0000 Received: from localhost ([127.0.0.1]:45277 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sxmPW-0007zF-Eb for submit@debbugs.gnu.org; Mon, 07 Oct 2024 08:00:26 -0400 Received: from eggs.gnu.org ([209.51.188.92]:56308) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sxmPQ-0007rM-V4 for 3468@debbugs.gnu.org; Mon, 07 Oct 2024 08:00:21 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sxmPE-0006CY-Bx; Mon, 07 Oct 2024 08:00:04 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=Fd+0IjvnN+RDkt/eHGZA7OgdK77QhjjUsFkOot0pZcw=; b=oFPsOXYyefgUXJzlJmCJ zO2knUiYkH46iAxhxJ4x1qrW1csWbXf7QEyAuMoJPMwIyWU/EzHr8oT8HlnBjeapm2jJ2Yt0nGYmL SgsDbYDHfyycAI9UaNc/qYIjpS+mDZBLrtF1dSFLVJN65/LxwsE44S9gDwhJqq2ZCIYPO+oZj/WlV yay1yuu8NIaiuLfxQliyi0zq+sphqPOx8SlxCCjLRELv11f1d049HiG4ahzeUzyM1PmsZ19kcof3a 0NcD38TY8SkZLODfG2e306u5h3C5IQ8p5qpElfP96gm8clmSlvJcIY5MBkNs4KuUhCVquqssfb7Qh 67WeGG4lzAOmiQ==; Date: Mon, 07 Oct 2024 15:00:02 +0300 Message-Id: <86msjgt96l.fsf@gnu.org> From: Eli Zaretskii To: Cecilio Pardo In-Reply-To: <39db8246-18f9-44ea-8678-925af995549f@imayhem.com> (message from Cecilio Pardo on Mon, 7 Oct 2024 12:28:20 +0200) Subject: Re: bug#3468: drag and drop text References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> <86ed4ux0xj.fsf@gnu.org> <86a5fiwx3e.fsf@gnu.org> <867camwwx8.fsf@gnu.org> <258ce0b8-95b3-4e39-ba52-fc007326c891@imayhem.com> <86msjhvk1n.fsf@gnu.org> <39db8246-18f9-44ea-8678-925af995549f@imayhem.com> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 3468 Cc: 3468@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: -3.3 (---) > Date: Mon, 7 Oct 2024 12:28:20 +0200 > Cc: 3468@debbugs.gnu.org > From: Cecilio Pardo > > On 06/10/2024 8:10, Eli Zaretskii wrote: > >> This should be implemented on Windows too, but it will take me some > >> time. Maybe you prefer to wait before installing the changes. > > > > Up to you. From where I stand, we can install what you have now, and > > add support for the above as a separate changeset. > > Let's do this then. Will install when I have time. > >> Also, do you think the manual should be updated too? > > > > If the manual becomes inaccurate or incomplete with your changes, then > > yes, of course. > > I was thinking about changing this: > > The XDND and Motif drag and drop protocols, and the old KDE 1.x > protocol, are currently supported. > > > To this: > > The XDND and Motif drag and drop protocols, and the old KDE 1.x > protocol, are currently supported. There is also support on MS-Windows. OK. > And adding later: > > The 'dnd-indicate-insertion-point’ and ‘dnd-scroll-margin’ variables are > not supported on MS-Windows. If you intend to work on supporting this, there's no need to add this now. From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 08 09:16:20 2024 Received: (at 3468) by debbugs.gnu.org; 8 Oct 2024 13:16:20 +0000 Received: from localhost ([127.0.0.1]:51656 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1syA4a-0006Gf-Bi for submit@debbugs.gnu.org; Tue, 08 Oct 2024 09:16:20 -0400 Received: from eggs.gnu.org ([209.51.188.92]:49106) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1syA4V-0006GL-IL for 3468@debbugs.gnu.org; Tue, 08 Oct 2024 09:16:19 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1syA4F-00069N-Hz; Tue, 08 Oct 2024 09:16:00 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=NyDl/Jd5jFELffGKtY+YtWQ0bvU7sprdaO95PkiaF9E=; b=a0kHyoA82Fpc YRwKOsRkuTw0JPoe+eQ6Pry16/Y5EF4MxQ2A2rcZ7vYEULE3YtD+3wfPYaocGrgeU/hU529kxmL6P 89Y1yalsgoJ07MBOVSa9GeZlEkUhza7SPG6mdpb2pO7auufIR5d6gc+DoZWHtbpyR2Qy38+WINYny pa4fTxj/cW9pRUYIUvJv9PLqY/nzCySzcOvjOZKh69TJeoZMGaek1INOXzzG6YQO4ev9LQvhOLywi rdit/vbtwk7g2rTDWV/UJzQEOu85gAxpM0ez9tYwOtCYI3iVxRee3+5M6DNjQovW2xmhHl2YNFMoH u0h7/nfSlnAKhMqhdBsGwA==; Date: Tue, 08 Oct 2024 16:15:55 +0300 Message-Id: <86o73uspkk.fsf@gnu.org> From: Eli Zaretskii To: cpardo@imayhem.com In-Reply-To: <86msjgt96l.fsf@gnu.org> (message from Eli Zaretskii on Mon, 07 Oct 2024 15:00:02 +0300) Subject: Re: bug#3468: drag and drop text References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> <86ed4ux0xj.fsf@gnu.org> <86a5fiwx3e.fsf@gnu.org> <867camwwx8.fsf@gnu.org> <258ce0b8-95b3-4e39-ba52-fc007326c891@imayhem.com> <86msjhvk1n.fsf@gnu.org> <39db8246-18f9-44ea-8678-925af995549f@imayhem.com> <86msjgt96l.fsf@gnu.org> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 3468 Cc: 3468@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: -3.3 (---) > Cc: 3468@debbugs.gnu.org > Date: Mon, 07 Oct 2024 15:00:02 +0300 > From: Eli Zaretskii > > > Date: Mon, 7 Oct 2024 12:28:20 +0200 > > Cc: 3468@debbugs.gnu.org > > From: Cecilio Pardo > > > > On 06/10/2024 8:10, Eli Zaretskii wrote: > > >> This should be implemented on Windows too, but it will take me some > > >> time. Maybe you prefer to wait before installing the changes. > > > > > > Up to you. From where I stand, we can install what you have now, and > > > add support for the above as a separate changeset. > > > > Let's do this then. > > Will install when I have time. Done. I'm not closing the bug, because you said you want to add support for the dnd-* variables. From debbugs-submit-bounces@debbugs.gnu.org Tue Oct 08 14:52:14 2024 Received: (at 3468) by debbugs.gnu.org; 8 Oct 2024 18:52:15 +0000 Received: from localhost ([127.0.0.1]:54464 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1syFJe-0007rm-K5 for submit@debbugs.gnu.org; Tue, 08 Oct 2024 14:52:14 -0400 Received: from mail.imayhem.com ([82.223.54.191]:49297 helo=zealous-pike.82-223-54-191.plesk.page) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1syFJc-0007rV-6d for 3468@debbugs.gnu.org; Tue, 08 Oct 2024 14:52:13 -0400 Received: from [192.168.68.105] (111.red-88-21-7.staticip.rima-tde.net [88.21.7.111]) by zealous-pike.82-223-54-191.plesk.page (Postfix) with ESMTPSA id 0729F80166; Tue, 8 Oct 2024 18:51:54 +0000 (UTC) Authentication-Results: zealous-pike.82-223-54-191.plesk.page; spf=pass (sender IP is 88.21.7.111) smtp.mailfrom=cpardo@imayhem.com smtp.helo=[192.168.68.105] Received-SPF: pass (zealous-pike.82-223-54-191.plesk.page: connection is authenticated) Message-ID: Date: Tue, 8 Oct 2024 20:51:53 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#3468: drag and drop text To: Eli Zaretskii References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> <86ed4ux0xj.fsf@gnu.org> <86a5fiwx3e.fsf@gnu.org> <867camwwx8.fsf@gnu.org> <258ce0b8-95b3-4e39-ba52-fc007326c891@imayhem.com> <86msjhvk1n.fsf@gnu.org> <39db8246-18f9-44ea-8678-925af995549f@imayhem.com> <86msjgt96l.fsf@gnu.org> <86o73uspkk.fsf@gnu.org> Content-Language: es-ES From: Cecilio Pardo In-Reply-To: <86o73uspkk.fsf@gnu.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 3468 Cc: 3468@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 (-) > I'm not closing the bug, because you said you want to add support for > the dnd-* variables. Thanks, I will. From debbugs-submit-bounces@debbugs.gnu.org Wed Oct 23 13:17:33 2024 Received: (at 3468) by debbugs.gnu.org; 23 Oct 2024 17:17:34 +0000 Received: from localhost ([127.0.0.1]:60663 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t3ezF-0006MY-8x for submit@debbugs.gnu.org; Wed, 23 Oct 2024 13:17:33 -0400 Received: from mail.imayhem.com ([82.223.54.191]:49481 helo=zealous-pike.82-223-54-191.plesk.page) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t3ezB-0006MC-R7 for 3468@debbugs.gnu.org; Wed, 23 Oct 2024 13:17:31 -0400 Received: from [192.168.68.104] (111.red-88-21-7.staticip.rima-tde.net [88.21.7.111]) by zealous-pike.82-223-54-191.plesk.page (Postfix) with ESMTPSA id 364CD8016C; Wed, 23 Oct 2024 17:16:52 +0000 (UTC) Authentication-Results: zealous-pike.82-223-54-191.plesk.page; spf=pass (sender IP is 88.21.7.111) smtp.mailfrom=cpardo@imayhem.com smtp.helo=[192.168.68.104] Received-SPF: pass (zealous-pike.82-223-54-191.plesk.page: connection is authenticated) Content-Type: multipart/mixed; boundary="------------NXWkxM7oCCvIlpJeEdebQGI5" Message-ID: <3adf9bbb-5c6a-4e6d-83f5-c1d2c6a059d6@imayhem.com> Date: Wed, 23 Oct 2024 19:16:51 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#3468: drag and drop text To: Eli Zaretskii References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> <86ed4ux0xj.fsf@gnu.org> <86a5fiwx3e.fsf@gnu.org> <867camwwx8.fsf@gnu.org> <258ce0b8-95b3-4e39-ba52-fc007326c891@imayhem.com> <86msjhvk1n.fsf@gnu.org> <39db8246-18f9-44ea-8678-925af995549f@imayhem.com> <86msjgt96l.fsf@gnu.org> <86o73uspkk.fsf@gnu.org> Content-Language: es-ES From: Cecilio Pardo In-Reply-To: <86o73uspkk.fsf@gnu.org> X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 3468 Cc: 3468@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 (-) This is a multi-part message in MIME format. --------------NXWkxM7oCCvIlpJeEdebQGI5 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 08/10/2024 15:15, Eli Zaretskii wrote: > I'm not closing the bug, because you said you want to add support for > the dnd-* variables. This add support for dnd-scroll-margin and dnd-indicate-insertion-point on MS-Windows. BTW, I think this variables should be enabled by default. I'd say that is the expected behaviour for drag and drop. --------------NXWkxM7oCCvIlpJeEdebQGI5 Content-Type: text/plain; charset=UTF-8; name="0001-Improve-drag-and-drop-on-MS-Windows-bug-3468.patch" Content-Disposition: attachment; filename="0001-Improve-drag-and-drop-on-MS-Windows-bug-3468.patch" Content-Transfer-Encoding: base64 RnJvbSA1YzBmMmExYjQwOTMxODI0ZGY3NWE2MjBkMjQ5NGYyMDMxYmYwZjgzIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBDZWNpbGlvIFBhcmRvIDxjcGFyZG9AaW1heWhlbS5j b20+CkRhdGU6IFdlZCwgMjMgT2N0IDIwMjQgMTQ6NDE6MjQgKzAyMDAKU3ViamVjdDogW1BB VENIXSBJbXByb3ZlIGRyYWcgYW5kIGRyb3Agb24gTVMtV2luZG93cyAoYnVnIzM0NjgpCgpB ZGQgc3VwcG9ydCBmb3IgZG5kLXNjcm9sbC1tYXJnaW4gYW5kIGRuZC1pbmRpY2F0ZS1pbnNl cnRpb24tcG9pbnQgYnkKY2FsbGluZyBkbmQtaGFuZGxlLW1vdmVtZW50IHdoZW4gZHJhZ2dp bmcgdGhlIG1vdXNlLgoKKiBsaXNwL3Rlcm0vdzMyLXdpbi5lbCAodzMyLWRyYWctbi1kcm9w KTogQ2FsbCBkbmQtaGFuZGxlLW1vdmVtZW50CndoZW4gYXBwbGljYWJsZS4KKiBzcmMvdzMy Zm5zLmMgKHczMl9oYW5kbGVfZHJhZ19tb3ZlbWVudCk6IE5ldyBmdW5jdGlvbiwgc2VuZHMg YQpXTV9FTUFDU19EUkFHT1ZFUiBtZXNzYWdlLgoodzMyX2Ryb3BfdGFyZ2V0X0RyYWdFbnRl cik6IENhbGwgdzMyX2hhbmRsZV9kcmFnX21vdmVtZW50LgoodzMyX2Ryb3BfdGFyZ2V0X0Ry YWdPdmVyKTogQ2FsbCB3MzJfaGFuZGxlX2RyYWdfbW92ZW1lbnQuCiogc3JjL3czMnRlcm0u YzogKHczMl9yZWFkX3NvY2tldCk6IEhhbmRsZSBXTV9FTUFDU19EUkFHT1ZFUiwKc2VuZGlu ZyBhbiBkcmFnLW4tZHJvcCBldmVudC4KKiBzcmMvdzMydGVybS5oICgpOiBEZWZpbmUgbmV3 IFdNX0VNQUNTX0RSQUdPVkVSIG1lc3NhZ2UuCi0tLQogbGlzcC90ZXJtL3czMi13aW4uZWwg fCA1NCArKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQogc3Jj L3czMmZucy5jICAgICAgICAgfCAxNyArKysrKysrKysrKysrLQogc3JjL3czMnRlcm0uYyAg ICAgICAgfCAxOCArKysrKysrKysrKysrKysKIHNyYy93MzJ0ZXJtLmggICAgICAgIHwgIDUg KystLQogNCBmaWxlcyBjaGFuZ2VkLCA2NiBpbnNlcnRpb25zKCspLCAyOCBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9saXNwL3Rlcm0vdzMyLXdpbi5lbCBiL2xpc3AvdGVybS93MzIt d2luLmVsCmluZGV4IDU0MWZlZjJjZWQzLi5iNDdiNWYyMWYwNSAxMDA2NDQKLS0tIGEvbGlz cC90ZXJtL3czMi13aW4uZWwKKysrIGIvbGlzcC90ZXJtL3czMi13aW4uZWwKQEAgLTEzNywz NSArMTM3LDM5IEBAIHczMi1kcmFnLW4tZHJvcAogSWYgRVZFTlQgaXMgZm9yIHRleHQsIGlu c2VydCB0aGF0IHRleHQgYXQgcG9pbnQgaW50byB0aGUgYnVmZmVyCiBzaG93biBpbiB0aGUg d2luZG93IHRoYXQgaXMgdGhlIHRhcmdldCBvZiB0aGUgZHJvcDsgaWYgdGhhdCBidWZmZXIg aXMKIHJlYWQtb25seSwgYWRkIHRoZSBkcm9wcGVkIHRleHQgdG8ga2lsbC1yaW5nLgorSWYg RVZFTlQgcGF5bG9hZCBpcyBuaWwsIHRoZW4gdGhpcyBpcyBhIGRyYWcgZXZlbnQuCiBJZiB0 aGUgb3B0aW9uYWwgYXJndW1lbnQgTkVXLUZSQU1FIGlzIG5vbi1uaWwsIHBlcmZvcm0gdGhl CiBkcmFnLW4tZHJvcCBhY3Rpb24gaW4gYSBuZXdseS1jcmVhdGVkIGZyYW1lIHVzaW5nIGl0 cyBzZWxlY3RlZC13aW5kb3cKIGFuZCB0aGF0IHdpbmRvdydzIGJ1ZmZlci4iCiAgIChpbnRl cmFjdGl2ZSAiZSIpCi0gIChzYXZlLWV4Y3Vyc2lvbgotICAgIDs7IE1ha2Ugc3VyZSB0aGUg ZHJvcCB0YXJnZXQgaGFzIHBvc2l0aXZlIGNvLW9yZHMKLSAgICA7OyBiZWZvcmUgc2V0dGlu ZyB0aGUgc2VsZWN0ZWQgZnJhbWUgLSBvdGhlcndpc2UgaXQKLSAgICA7OyB3b24ndCB3b3Jr LiAgPHNreEB0YXJkaXMuZWQuYWMudWs+Ci0gICAgKGxldCogKCh3aW5kb3cgKHBvc24td2lu ZG93IChldmVudC1zdGFydCBldmVudCkpKQotCSAgIChjb29yZHMgKHBvc24teC15IChldmVu dC1zdGFydCBldmVudCkpKQotICAgICAgICAgICAoYXJnIChjYXIgKGNkciAoY2RyIGV2ZW50 KSkpKQotCSAgICh4IChjYXIgY29vcmRzKSkKLQkgICAoeSAoY2RyIGNvb3JkcykpKQotICAg ICAgKGlmIChhbmQgKD4geCAwKSAoPiB5IDApKQotCSAgKHNldC1mcmFtZS1zZWxlY3RlZC13 aW5kb3cgbmlsIHdpbmRvdykpCi0KLSAgICAgICh3aGVuIG5ldy1mcmFtZQotICAgICAgICAo c2VsZWN0LWZyYW1lIChtYWtlLWZyYW1lKSkpCi0gICAgICAocmFpc2UtZnJhbWUpCi0gICAg ICAoc2V0cSB3aW5kb3cgKHNlbGVjdGVkLXdpbmRvdykpCi0KLSAgICAgIDs7IGFyZyAodGhl IHBheWxvYWQgb2YgdGhlIGV2ZW50KSBpcyBhIHN0cmluZyB3aGVuIHRoZSBkcm9wIGlzCi0g ICAgICA7OyB0ZXh0LCBhbmQgYSBsaXN0IG9mIHN0cmluZ3Mgd2hlbiB0aGUgZHJvcCBpcyBv bmUgb3IgbW9yZSBmaWxlcy4KLSAgICAgIChpZiAoc3RyaW5ncCBhcmcpCi0gICAgICAgICAg KGRuZC1pbnNlcnQtdGV4dCB3aW5kb3cgJ2NvcHkgYXJnKQotICAgICAgICAoZG5kLWhhbmRs ZS1tdWx0aXBsZS11cmxzCi0gICAgICAgICB3aW5kb3cKLSAgICAgICAgIChtYXBjYXIgIyd3 MzItZHJvcHBlZC1maWxlLXRvLXVybCBhcmcpCi0gICAgICAgICAncHJpdmF0ZSkpKSkpCisg IDs7IE1ha2Ugc3VyZSB0aGUgZHJvcCB0YXJnZXQgaGFzIHBvc2l0aXZlIGNvLW9yZHMKKyAg OzsgYmVmb3JlIHNldHRpbmcgdGhlIHNlbGVjdGVkIGZyYW1lIC0gb3RoZXJ3aXNlIGl0Cisg IDs7IHdvbid0IHdvcmsuICA8c2t4QHRhcmRpcy5lZC5hYy51az4KKyAgKGxldCogKCh3aW5k b3cgKHBvc24td2luZG93IChldmVudC1zdGFydCBldmVudCkpKQorCSAoY29vcmRzIChwb3Nu LXgteSAoZXZlbnQtc3RhcnQgZXZlbnQpKSkKKyAgICAgICAgIChhcmcgKGNhciAoY2RyIChj ZHIgZXZlbnQpKSkpCisJICh4IChjYXIgY29vcmRzKSkKKwkgKHkgKGNkciBjb29yZHMpKSkK KworICAgIChpZiAoYW5kICg+IHggMCkgKD4geSAwKSAod2luZG93LWxpdmUtcCB3aW5kb3cp KQorICAgICAgICAoc2V0LWZyYW1lLXNlbGVjdGVkLXdpbmRvdyBuaWwgd2luZG93KSkKKyAg ICA7OyBEb24ndCBjcmVhdGUgbmV3IGZyYW1lIGlmIHdlIGFyZSBqdXN0IGRyYWdnaW5nCisg ICAgKGFuZCBhcmcgbmV3LWZyYW1lCisgICAgICAgICAoc2VsZWN0LWZyYW1lIChtYWtlLWZy YW1lKSkpCisgICAgKHJhaXNlLWZyYW1lKQorICAgIChzZXRxIHdpbmRvdyAoc2VsZWN0ZWQt d2luZG93KSkKKworICAgIDs7IGFyZyAodGhlIHBheWxvYWQgb2YgdGhlIGV2ZW50KSBpcyBh IHN0cmluZyB3aGVuIHRoZSBkcm9wIGlzCisgICAgOzsgdGV4dCwgYW5kIGEgbGlzdCBvZiBz dHJpbmdzIHdoZW4gdGhlIGRyb3AgaXMgb25lIG9yIG1vcmUgZmlsZXMuCisgICAgOzsgSXQg aXMgbmlsIGlmIHRoZSBldmVudCBpcyBhIGRyYWcgZXZlbnQuCisgICAgKGlmIGFyZworICAg ICAgICAoaWYgKHN0cmluZ3AgYXJnKQorICAgICAgICAgICAgKGRuZC1pbnNlcnQtdGV4dCB3 aW5kb3cgJ2NvcHkgYXJnKQorICAgICAgICAgIChkbmQtaGFuZGxlLW11bHRpcGxlLXVybHMK KyAgICAgICAgICAgd2luZG93CisgICAgICAgICAgIChtYXBjYXIgIyd3MzItZHJvcHBlZC1m aWxlLXRvLXVybCBhcmcpCisgICAgICAgICAgICdwcml2YXRlKSkKKyAgICAgIChkbmQtaGFu ZGxlLW1vdmVtZW50IChldmVudC1zdGFydCBldmVudCkpKSkpCiAKIChkZWZ1biB3MzItZHJh Zy1uLWRyb3Atb3RoZXItZnJhbWUgKGV2ZW50KQogICAiRWRpdCB0aGUgZmlsZXMgbGlzdGVk IGluIHRoZSBkcmFnLW4tZHJvcCBFVkVOVCwgaW4gb3RoZXIgZnJhbWVzLgpkaWZmIC0tZ2l0 IGEvc3JjL3czMmZucy5jIGIvc3JjL3czMmZucy5jCmluZGV4IDNlZTEzZGNiYmRkLi5lYjQy ZDNiNjFiMiAxMDA2NDQKLS0tIGEvc3JjL3czMmZucy5jCisrKyBiL3NyYy93MzJmbnMuYwpA QCAtMjUwNSw3ICsyNTA1LDYgQEAgcHJvY2Vzc19kcm9wZmlsZXMgKERST1BGSUxFUyAqZmls ZXMpCiAgIHJldHVybiBsaXNwX2ZpbGVzOwogfQogCi0KIC8qIFRoaXMgZnVuY3Rpb24gY2Fu IGJlIGNhbGxlZCBPTkxZIGJldHdlZW4gY2FsbHMgdG8KICAgIGJsb2NrX2lucHV0L3VuYmxv Y2tfaW5wdXQuICBJdCBpcyB1c2VkIGluIHczMl9yZWFkX3NvY2tldC4gICovCiBMaXNwX09i amVjdApAQCAtMjU3Miw2ICsyNTcxLDE5IEBAIHczMl9kcm9wX3RhcmdldF9SZWxlYXNlIChJ RHJvcFRhcmdldCAqVGhpcykKICAgcmV0dXJuIDA7CiB9CiAKK3N0YXRpYyB2b2lkCit3MzJf aGFuZGxlX2RyYWdfbW92ZW1lbnQgKElEcm9wVGFyZ2V0ICpUaGlzLCBQT0lOVEwgcHQpCit7 CisgIHN0cnVjdCB3MzJfZHJvcF90YXJnZXQgKnRhcmdldCA9IChzdHJ1Y3QgdzMyX2Ryb3Bf dGFyZ2V0ICopVGhpczsKKworICBXMzJNc2cgbXNnID0gezB9OworICBtc2cuZHdNb2RpZmll cnMgPSB3MzJfZ2V0X21vZGlmaWVycyAoKTsKKyAgbXNnLm1zZy50aW1lID0gR2V0TWVzc2Fn ZVRpbWUgKCk7CisgIG1zZy5tc2cucHQueCA9IHB0Lng7CisgIG1zZy5tc2cucHQueSA9IHB0 Lnk7CisgIG15X3Bvc3RfbXNnICgmbXNnLCB0YXJnZXQtPmh3bmQsIFdNX0VNQUNTX0RSQUdP VkVSLCAwLCAwICk7Cit9CisKIHN0YXRpYyBIUkVTVUxUIFNURE1FVEhPRENBTExUWVBFCiB3 MzJfZHJvcF90YXJnZXRfRHJhZ0VudGVyIChJRHJvcFRhcmdldCAqVGhpcywgSURhdGFPYmpl Y3QgKnBEYXRhT2JqLAogCQkJICAgRFdPUkQgZ3JmS2V5U3RhdGUsIFBPSU5UTCBwdCwgRFdP UkQgKnBkd0VmZmVjdCkKQEAgLTI1ODEsNiArMjU5Myw3IEBAIHczMl9kcm9wX3RhcmdldF9E cmFnRW50ZXIgKElEcm9wVGFyZ2V0ICpUaGlzLCBJRGF0YU9iamVjdCAqcERhdGFPYmosCiAg ICAgIGhhcHBlbiBvbiBkcm9wLiAgV2Ugc2VuZCBDT1BZIGJlY2F1c2Ugb3VyIHVzZSBjYXNl cyBkb24ndCBtb2RpZnkKICAgICAgb3IgbGluayB0byB0aGUgb3JpZ2luYWwgZGF0YS4gICov CiAgICpwZHdFZmZlY3QgPSBEUk9QRUZGRUNUX0NPUFk7CisgIHczMl9oYW5kbGVfZHJhZ19t b3ZlbWVudCAoVGhpcywgcHQpOwogICByZXR1cm4gU19PSzsKIH0KIApAQCAtMjU5MCw2ICsy NjAzLDcgQEAgdzMyX2Ryb3BfdGFyZ2V0X0RyYWdPdmVyIChJRHJvcFRhcmdldCAqVGhpcywg RFdPUkQgZ3JmS2V5U3RhdGUsIFBPSU5UTCBwdCwKIHsKICAgLyogU2VlIGNvbW1lbnQgaW4g dzMyX2Ryb3BfdGFyZ2V0X0RyYWdFbnRlci4gICovCiAgICpwZHdFZmZlY3QgPSBEUk9QRUZG RUNUX0NPUFk7CisgIHczMl9oYW5kbGVfZHJhZ19tb3ZlbWVudCAoVGhpcywgcHQpOwogICBy ZXR1cm4gU19PSzsKIH0KIApAQCAtMzYwNyw2ICszNjIxLDcgQEAgI2RlZmluZSBNKG1zZykg eyBtc2csICMgbXNnIH0KICAgICAgIE0gKFdNX0VNQUNTX1BBSU5UKSwKICAgICAgIE0gKFdN X0VNQUNTX0lNRV9TVEFUVVMpLAogICAgICAgTSAoV01fQ0hBUiksCisgICAgICBNIChXTV9F TUFDU19EUkFHT1ZFUiksCiAgICAgICBNIChXTV9FTUFDU19EUk9QKSwKICN1bmRlZiBNCiAg ICAgICB7IDAsIDAgfQpkaWZmIC0tZ2l0IGEvc3JjL3czMnRlcm0uYyBiL3NyYy93MzJ0ZXJt LmMKaW5kZXggM2E2MjczMDgxMzcuLjg4NjIyNzAwMzg2IDEwMDY0NAotLS0gYS9zcmMvdzMy dGVybS5jCisrKyBiL3NyYy93MzJ0ZXJtLmMKQEAgLTU2MjksNiArNTYyOSwyNCBAQCB3MzJf cmVhZF9zb2NrZXQgKHN0cnVjdCB0ZXJtaW5hbCAqdGVybWluYWwsCiAJICB9CiAJICBicmVh azsKIAorCWNhc2UgV01fRU1BQ1NfRFJBR09WRVI6CisJICB7CisJICAgIGYgPSB3MzJfd2lu ZG93X3RvX2ZyYW1lIChkcHlpbmZvLCBtc2cubXNnLmh3bmQpOworCSAgICBpZiAoIWYpCisJ ICAgICAgYnJlYWs7CisJICAgIFhTRVRGUkFNRSAoaW5ldi5mcmFtZV9vcl93aW5kb3csIGYp OworCSAgICBpbmV2LmtpbmQgPSBEUkFHX05fRFJPUF9FVkVOVDsKKwkgICAgaW5ldi5jb2Rl ID0gMDsKKwkgICAgaW5ldi50aW1lc3RhbXAgPSBtc2cubXNnLnRpbWU7CisJICAgIGluZXYu bW9kaWZpZXJzID0gbXNnLmR3TW9kaWZpZXJzOworCSAgICBTY3JlZW5Ub0NsaWVudCAobXNn Lm1zZy5od25kLCAmbXNnLm1zZy5wdCk7CisJICAgIFhTRVRJTlQgKGluZXYueCwgbXNnLm1z Zy5wdC54KTsKKwkgICAgWFNFVElOVCAoaW5ldi55LCBtc2cubXNnLnB0LnkpOworCSAgICAv KiBUaGlzIGlzIGEgZHJhZyBtb3ZlbWVudC4gICovCisJICAgIGluZXYuYXJnID0gUW5pbDsK KwkgICAgYnJlYWs7CisJICB9CisKIAljYXNlIFdNX0hTQ1JPTEw6CiAJICB7CiAJICAgIHN0 cnVjdCBzY3JvbGxfYmFyICpiYXIgPQpkaWZmIC0tZ2l0IGEvc3JjL3czMnRlcm0uaCBiL3Ny Yy93MzJ0ZXJtLmgKaW5kZXggMzllMjI2MmUyYTguLmNhZDlmY2Y4Y2IxIDEwMDY0NAotLS0g YS9zcmMvdzMydGVybS5oCisrKyBiL3NyYy93MzJ0ZXJtLmgKQEAgLTcxMSw4ICs3MTEsOSBA QCAjZGVmaW5lIFdNX0VNQUNTX0JSSU5HVE9UT1AgICAgICAgICAgICAoV01fRU1BQ1NfU1RB UlQgKyAyMykKICNkZWZpbmUgV01fRU1BQ1NfSU5QVVRfUkVBRFkgICAgICAgICAgIChXTV9F TUFDU19TVEFSVCArIDI0KQogI2RlZmluZSBXTV9FTUFDU19GSUxFTk9USUZZICAgICAgICAg ICAgKFdNX0VNQUNTX1NUQVJUICsgMjUpCiAjZGVmaW5lIFdNX0VNQUNTX0lNRV9TVEFUVVMg ICAgICAgICAgICAoV01fRU1BQ1NfU1RBUlQgKyAyNikKLSNkZWZpbmUgV01fRU1BQ1NfRFJP UCAgICAgICAgICAgICAgICAgIChXTV9FTUFDU19TVEFSVCArIDI3KQotI2RlZmluZSBXTV9F TUFDU19FTkQgICAgICAgICAgICAgICAgICAgKFdNX0VNQUNTX1NUQVJUICsgMjgpCisjZGVm aW5lIFdNX0VNQUNTX0RSQUdPVkVSICAgICAgICAgICAgICAoV01fRU1BQ1NfU1RBUlQgKyAy NykKKyNkZWZpbmUgV01fRU1BQ1NfRFJPUCAgICAgICAgICAgICAgICAgIChXTV9FTUFDU19T VEFSVCArIDI4KQorI2RlZmluZSBXTV9FTUFDU19FTkQgICAgICAgICAgICAgICAgICAgKFdN X0VNQUNTX1NUQVJUICsgMjkpCiAKICNkZWZpbmUgV05EX0ZPTlRXSURUSF9JTkRFWCAgICAo MCkKICNkZWZpbmUgV05EX0xJTkVIRUlHSFRfSU5ERVggICAoNCkKLS0gCjIuMzUuMS53aW5k b3dzLjIKCg== --------------NXWkxM7oCCvIlpJeEdebQGI5-- From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 24 03:38:16 2024 Received: (at 3468) by debbugs.gnu.org; 24 Oct 2024 07:38:17 +0000 Received: from localhost ([127.0.0.1]:33453 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t3sQC-0003u0-IB for submit@debbugs.gnu.org; Thu, 24 Oct 2024 03:38:16 -0400 Received: from eggs.gnu.org ([209.51.188.92]:49874) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t3sQA-0003tm-7S for 3468@debbugs.gnu.org; Thu, 24 Oct 2024 03:38:15 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1t3sPZ-0002hF-Bb; Thu, 24 Oct 2024 03:37:38 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=6vv8iK5ZzTCaR1vP/AQzJV9V38mFNPZW1b0Evw1LjJw=; b=mPZvp506L0Ff xV1E9Kb+QIT1op9NNy7NTQB3jk9zQX2ufMXx1typ5UfhhBZmom50N8+9SeOP4qigpLiYVa87yvk7d wPSD9gGxLkXyPyVCkF8/CZCgZonaSNwxxZgeY6eUIcw8mM+Y6djyAme+aJWfA9T41skOIds75bgNj SDzPccx2oXPK0Cah1RwfmNnEXYFLPdW+jJaQbd6z+iXPoBrgPyZ1uR6YOt+TUabdZ/We2ywzko0EL A7ET6i8UI015TPqXN94Zu+B+XjImUSaKlrALcV/7F3YfQwQCvC0PvQf+Z6r5FWTIzLDANS/AIPjBw wCyDVOf8BQtSpl1FSear0A==; Date: Thu, 24 Oct 2024 10:37:22 +0300 Message-Id: <861q06dk99.fsf@gnu.org> From: Eli Zaretskii To: Cecilio Pardo In-Reply-To: <3adf9bbb-5c6a-4e6d-83f5-c1d2c6a059d6@imayhem.com> (message from Cecilio Pardo on Wed, 23 Oct 2024 19:16:51 +0200) Subject: Re: bug#3468: drag and drop text References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> <86ed4ux0xj.fsf@gnu.org> <86a5fiwx3e.fsf@gnu.org> <867camwwx8.fsf@gnu.org> <258ce0b8-95b3-4e39-ba52-fc007326c891@imayhem.com> <86msjhvk1n.fsf@gnu.org> <39db8246-18f9-44ea-8678-925af995549f@imayhem.com> <86msjgt96l.fsf@gnu.org> <86o73uspkk.fsf@gnu.org> <3adf9bbb-5c6a-4e6d-83f5-c1d2c6a059d6@imayhem.com> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 3468 Cc: 3468@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: -3.3 (---) > Date: Wed, 23 Oct 2024 19:16:51 +0200 > Cc: 3468@debbugs.gnu.org > From: Cecilio Pardo > > This add support for dnd-scroll-margin and dnd-indicate-insertion-point > on MS-Windows. Thanks. I guess I'm missing some higher-level understanding of how this work, because I don't think I understand why you needed to add a special message WM_EMACS_DRAGOVER for this. Can you explain? > BTW, I think this variables should be enabled by default. I'd say that > is the expected behaviour for drag and drop. Maybe. But that is a separate issue. > * lisp/term/w32-win.el (w32-drag-n-drop): Call dnd-handle-movement > when applicable. > * src/w32fns.c (w32_handle_drag_movement): New function, sends a > WM_EMACS_DRAGOVER message. > (w32_drop_target_DragEnter): Call w32_handle_drag_movement. > (w32_drop_target_DragOver): Call w32_handle_drag_movement. > * src/w32term.c: (w32_read_socket): Handle WM_EMACS_DRAGOVER, > sending an drag-n-drop event. Please quote symbols 'like this'. > * src/w32term.h (): Define new WM_EMACS_DRAGOVER message. ^^^ Please remove these parentheses. > --- a/lisp/term/w32-win.el > +++ b/lisp/term/w32-win.el > @@ -137,35 +137,39 @@ w32-drag-n-drop > If EVENT is for text, insert that text at point into the buffer > shown in the window that is the target of the drop; if that buffer is > read-only, add the dropped text to kill-ring. > +If EVENT payload is nil, then this is a drag event. > If the optional argument NEW-FRAME is non-nil, perform the > drag-n-drop action in a newly-created frame using its selected-window > and that window's buffer." > (interactive "e") > - (save-excursion What are the reasons for removing save-excursion? I guess this also needs a NEWS entry, to announce support for these two variables on MS-Windows? From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 24 03:57:03 2024 Received: (at submit) by debbugs.gnu.org; 24 Oct 2024 07:57:03 +0000 Received: from localhost ([127.0.0.1]:33492 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t3siM-0004nE-MW for submit@debbugs.gnu.org; Thu, 24 Oct 2024 03:57:03 -0400 Received: from lists.gnu.org ([209.51.188.17]:50898) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t3siJ-0004mn-DF for submit@debbugs.gnu.org; Thu, 24 Oct 2024 03:57:01 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1t3shm-000066-OX for bug-gnu-emacs@gnu.org; Thu, 24 Oct 2024 03:56:27 -0400 Received: from mail.imayhem.com ([82.223.54.191] helo=zealous-pike.82-223-54-191.plesk.page) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1t3shh-00053t-AS for bug-gnu-emacs@gnu.org; Thu, 24 Oct 2024 03:56:26 -0400 Received: from [192.168.68.104] (111.red-88-21-7.staticip.rima-tde.net [88.21.7.111]) by zealous-pike.82-223-54-191.plesk.page (Postfix) with ESMTPSA id 1D43F80185 for ; Thu, 24 Oct 2024 07:56:18 +0000 (UTC) Authentication-Results: zealous-pike.82-223-54-191.plesk.page; spf=pass (sender IP is 88.21.7.111) smtp.mailfrom=cpardo@imayhem.com smtp.helo=[192.168.68.104] Received-SPF: pass (zealous-pike.82-223-54-191.plesk.page: connection is authenticated) Message-ID: <720db34f-57ea-4de5-b2b5-b0f2c8f7c1ef@imayhem.com> Date: Thu, 24 Oct 2024 09:56:16 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#3468: drag and drop text To: bug-gnu-emacs@gnu.org References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> <86ed4ux0xj.fsf@gnu.org> <86a5fiwx3e.fsf@gnu.org> <867camwwx8.fsf@gnu.org> <258ce0b8-95b3-4e39-ba52-fc007326c891@imayhem.com> <86msjhvk1n.fsf@gnu.org> <39db8246-18f9-44ea-8678-925af995549f@imayhem.com> <86msjgt96l.fsf@gnu.org> <86o73uspkk.fsf@gnu.org> <3adf9bbb-5c6a-4e6d-83f5-c1d2c6a059d6@imayhem.com> <861q06dk99.fsf@gnu.org> Content-Language: es-ES From: Cecilio Pardo In-Reply-To: <861q06dk99.fsf@gnu.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Received-SPF: pass client-ip=82.223.54.191; envelope-from=cpardo@imayhem.com; helo=zealous-pike.82-223-54-191.plesk.page X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) 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.3 (--) On 24/10/2024 9:37, Eli Zaretskii wrote: > I guess I'm missing some higher-level understanding of how this work, > because I don't think I understand why you needed to add a special > message WM_EMACS_DRAGOVER for this. Can you explain? I could reuse WM_EMACS_DROP, maybe rename to WM_EMACS_DRAGDROP. Added a new one just for clarity. > What are the reasons for removing save-excursion? dnd-handle-movement needs to move the point to apply dnd-indicate-insertion-point- From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 24 04:17:39 2024 Received: (at 3468) by debbugs.gnu.org; 24 Oct 2024 08:17:39 +0000 Received: from localhost ([127.0.0.1]:33557 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t3t2J-0005nv-05 for submit@debbugs.gnu.org; Thu, 24 Oct 2024 04:17:39 -0400 Received: from eggs.gnu.org ([209.51.188.92]:40956) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t3t2G-0005ng-UM for 3468@debbugs.gnu.org; Thu, 24 Oct 2024 04:17:37 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1t3t1f-0007ix-EG; Thu, 24 Oct 2024 04:17:00 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=B56XW52n+C7Q+57TKYRT7w9wid2I9bacZoB67i6L8Pc=; b=mWDpJoxQPCbF dulSqDRVyNxrtMxAnGPtbhvz5PN37mHnvEVVcppdCyEjFyPmRSZu+RdPe3TUnVSoiRUjdhpfQH0R9 QZbkW9EqWCmVEqCf1ojpWlK2TAFvdiH7DQ7ffpMAFob54/0kJ29f8jYdRCj3KfXlZVQkwkTKdFmOl X4FARaqNys7OdO1Jf69nQxoZ+webAiyDIDQuKtUtqxyWKS+G0PUlC/d1CvLekFdXfbc0hyRo3uHwA FPgWQM34sVybJEk2THcuBwvhNAP9pSJlcDdAwyqHT5Wv4VHlZxMB3YbzWPRRGUypUEIbg+1+Rfnja WKXWagsMQQ6BsepCxKWNnw==; Date: Thu, 24 Oct 2024 11:16:56 +0300 Message-Id: <86y12ddifb.fsf@gnu.org> From: Eli Zaretskii To: Cecilio Pardo In-Reply-To: <720db34f-57ea-4de5-b2b5-b0f2c8f7c1ef@imayhem.com> (message from Cecilio Pardo on Thu, 24 Oct 2024 09:56:16 +0200) Subject: Re: bug#3468: drag and drop text References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> <86ed4ux0xj.fsf@gnu.org> <86a5fiwx3e.fsf@gnu.org> <867camwwx8.fsf@gnu.org> <258ce0b8-95b3-4e39-ba52-fc007326c891@imayhem.com> <86msjhvk1n.fsf@gnu.org> <39db8246-18f9-44ea-8678-925af995549f@imayhem.com> <86msjgt96l.fsf@gnu.org> <86o73uspkk.fsf@gnu.org> <3adf9bbb-5c6a-4e6d-83f5-c1d2c6a059d6@imayhem.com> <861q06dk99.fsf@gnu.org> <720db34f-57ea-4de5-b2b5-b0f2c8f7c1ef@imayhem.com> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 3468 Cc: 3468@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: -3.3 (---) > Date: Thu, 24 Oct 2024 09:56:16 +0200 > From: Cecilio Pardo > > On 24/10/2024 9:37, Eli Zaretskii wrote: > > I guess I'm missing some higher-level understanding of how this work, > > because I don't think I understand why you needed to add a special > > message WM_EMACS_DRAGOVER for this. Can you explain? > > I could reuse WM_EMACS_DROP, maybe rename to WM_EMACS_DRAGDROP. Added a > new one just for clarity. I don't mind a new message, I just didn't understand why it was needed. What is the purpose of WM_EMACS_DROP, and how it differs from this new message? > > What are the reasons for removing save-excursion? > > dnd-handle-movement needs to move the point to apply > dnd-indicate-insertion-point- Then maybe use save-excursion when dnd-handle-movement is NOT called? From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 24 04:46:56 2024 Received: (at 3468) by debbugs.gnu.org; 24 Oct 2024 08:46:56 +0000 Received: from localhost ([127.0.0.1]:33599 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t3tUd-00078e-NN for submit@debbugs.gnu.org; Thu, 24 Oct 2024 04:46:55 -0400 Received: from mail.imayhem.com ([82.223.54.191]:57073 helo=zealous-pike.82-223-54-191.plesk.page) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t3tUa-00078K-Ql for 3468@debbugs.gnu.org; Thu, 24 Oct 2024 04:46:53 -0400 Received: from [192.168.68.104] (111.red-88-21-7.staticip.rima-tde.net [88.21.7.111]) by zealous-pike.82-223-54-191.plesk.page (Postfix) with ESMTPSA id 5E0F780185; Thu, 24 Oct 2024 08:46:14 +0000 (UTC) Authentication-Results: zealous-pike.82-223-54-191.plesk.page; spf=pass (sender IP is 88.21.7.111) smtp.mailfrom=cpardo@imayhem.com smtp.helo=[192.168.68.104] Received-SPF: pass (zealous-pike.82-223-54-191.plesk.page: connection is authenticated) Message-ID: <8bcf754c-6447-4017-ac33-af63e6f203a7@imayhem.com> Date: Thu, 24 Oct 2024 10:46:12 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#3468: drag and drop text To: Eli Zaretskii References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> <86ed4ux0xj.fsf@gnu.org> <86a5fiwx3e.fsf@gnu.org> <867camwwx8.fsf@gnu.org> <258ce0b8-95b3-4e39-ba52-fc007326c891@imayhem.com> <86msjhvk1n.fsf@gnu.org> <39db8246-18f9-44ea-8678-925af995549f@imayhem.com> <86msjgt96l.fsf@gnu.org> <86o73uspkk.fsf@gnu.org> <3adf9bbb-5c6a-4e6d-83f5-c1d2c6a059d6@imayhem.com> <861q06dk99.fsf@gnu.org> <720db34f-57ea-4de5-b2b5-b0f2c8f7c1ef@imayhem.com> <86y12ddifb.fsf@gnu.org> Content-Language: es-ES From: Cecilio Pardo In-Reply-To: <86y12ddifb.fsf@gnu.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 3468 Cc: 3468@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 (-) On 24/10/2024 10:16, Eli Zaretskii wrote: >> On 24/10/2024 9:37, Eli Zaretskii wrote: >>> I guess I'm missing some higher-level understanding of how this work, >>> because I don't think I understand why you needed to add a special >>> message WM_EMACS_DRAGOVER for this. Can you explain? >> >> I could reuse WM_EMACS_DROP, maybe rename to WM_EMACS_DRAGDROP. Added a >> new one just for clarity. > > I don't mind a new message, I just didn't understand why it was > needed. What is the purpose of WM_EMACS_DROP, and how it differs from > this new message? We receive the drag or drop information in the functions w32_drop_target_Drop and w32_drop_target_DragOver, which run on another thread. We need to notify that to the input thread, sending a message to the window. We use those to custom messages, WM_EMACS_DROP and WM_EMACS_DRAGDROP. One for the drop, the other for when the mouse moves over the window. > >>> What are the reasons for removing save-excursion? >> >> dnd-handle-movement needs to move the point to apply >> dnd-indicate-insertion-point- > > Then maybe use save-excursion when dnd-handle-movement is NOT called? Ok, I'll do that. From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 24 05:41:01 2024 Received: (at 3468) by debbugs.gnu.org; 24 Oct 2024 09:41:01 +0000 Received: from localhost ([127.0.0.1]:33675 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t3uKy-0001E6-LU for submit@debbugs.gnu.org; Thu, 24 Oct 2024 05:41:00 -0400 Received: from eggs.gnu.org ([209.51.188.92]:39350) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t3uKw-0001Dm-V0 for 3468@debbugs.gnu.org; Thu, 24 Oct 2024 05:40:59 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1t3uKN-0002CK-8J; Thu, 24 Oct 2024 05:40:23 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=BSjAtjk7ZHnrvF4zo82gfUhowmReKdHP+Tz7aNSLojI=; b=oe5n3qbEvwxn Pn8drWQSHcpK03fS8FAl2pLhmrUY05Baf5ZT8EmpoOHwwclFWLLOrvfgKW16IK8syM3zQr8LWRc5h RTjlUDv4CgZM8bSrGvaCODBtSi1OCFoSBvVQCMu5xnwDChSB5pxd7Y2Vr/ik/TTmbQIFQl/ZRQWiX jp6uYshWWZ5fb1T6diXTETSEnwFQy3Gv19iNnBwZFBGtj0VkiC131Zd33qHDQHTWywXrOPu25Kf9b 086l+fI5VXbCr/EJpfgod6WRdPsXGYB9Vl4zEn1u8xIUrdhARPv4TuNcVgnkq+EMg6/mwCN38y1rE 7LLYFf7RgE+/Vsddr1snsg==; Date: Thu, 24 Oct 2024 12:40:19 +0300 Message-Id: <86ttd1dekc.fsf@gnu.org> From: Eli Zaretskii To: Cecilio Pardo In-Reply-To: <8bcf754c-6447-4017-ac33-af63e6f203a7@imayhem.com> (message from Cecilio Pardo on Thu, 24 Oct 2024 10:46:12 +0200) Subject: Re: bug#3468: drag and drop text References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> <86ed4ux0xj.fsf@gnu.org> <86a5fiwx3e.fsf@gnu.org> <867camwwx8.fsf@gnu.org> <258ce0b8-95b3-4e39-ba52-fc007326c891@imayhem.com> <86msjhvk1n.fsf@gnu.org> <39db8246-18f9-44ea-8678-925af995549f@imayhem.com> <86msjgt96l.fsf@gnu.org> <86o73uspkk.fsf@gnu.org> <3adf9bbb-5c6a-4e6d-83f5-c1d2c6a059d6@imayhem.com> <861q06dk99.fsf@gnu.org> <720db34f-57ea-4de5-b2b5-b0f2c8f7c1ef@imayhem.com> <86y12ddifb.fsf@gnu.org> <8bcf754c-6447-4017-ac33-af63e6f203a7@imayhem.com> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 3468 Cc: 3468@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: -3.3 (---) > Date: Thu, 24 Oct 2024 10:46:12 +0200 > Cc: 3468@debbugs.gnu.org > From: Cecilio Pardo > > On 24/10/2024 10:16, Eli Zaretskii wrote: > >> On 24/10/2024 9:37, Eli Zaretskii wrote: > >>> I guess I'm missing some higher-level understanding of how this work, > >>> because I don't think I understand why you needed to add a special > >>> message WM_EMACS_DRAGOVER for this. Can you explain? > >> > >> I could reuse WM_EMACS_DROP, maybe rename to WM_EMACS_DRAGDROP. Added a > >> new one just for clarity. > > > > I don't mind a new message, I just didn't understand why it was > > needed. What is the purpose of WM_EMACS_DROP, and how it differs from > > this new message? > > We receive the drag or drop information in the functions > w32_drop_target_Drop and w32_drop_target_DragOver, which run on another > thread. We need to notify that to the input thread, sending a message to > the window. We use those to custom messages, WM_EMACS_DROP and > WM_EMACS_DRAGDROP. One for the drop, the other for when the mouse moves > over the window. Ah, okay, thanks. So moving point and/or scrolling use different message from actually dropping the payload? Makes sense. From debbugs-submit-bounces@debbugs.gnu.org Thu Oct 24 12:53:27 2024 Received: (at submit) by debbugs.gnu.org; 24 Oct 2024 16:53:28 +0000 Received: from localhost ([127.0.0.1]:36038 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t415T-0005Km-8Y for submit@debbugs.gnu.org; Thu, 24 Oct 2024 12:53:27 -0400 Received: from lists.gnu.org ([209.51.188.17]:33566) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t415Q-0005Kb-T1 for submit@debbugs.gnu.org; Thu, 24 Oct 2024 12:53:26 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1t414u-0003Lg-Q7 for bug-gnu-emacs@gnu.org; Thu, 24 Oct 2024 12:52:52 -0400 Received: from mail.imayhem.com ([82.223.54.191] helo=zealous-pike.82-223-54-191.plesk.page) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1t414s-0002Rd-2I for bug-gnu-emacs@gnu.org; Thu, 24 Oct 2024 12:52:52 -0400 Received: from [192.168.68.104] (111.red-88-21-7.staticip.rima-tde.net [88.21.7.111]) by zealous-pike.82-223-54-191.plesk.page (Postfix) with ESMTPSA id 255C880185 for ; Thu, 24 Oct 2024 16:52:43 +0000 (UTC) Authentication-Results: zealous-pike.82-223-54-191.plesk.page; spf=pass (sender IP is 88.21.7.111) smtp.mailfrom=cpardo@imayhem.com smtp.helo=[192.168.68.104] Received-SPF: pass (zealous-pike.82-223-54-191.plesk.page: connection is authenticated) Content-Type: multipart/mixed; boundary="------------CQmF0VugHHVsSY4zNQYqFfzR" Message-ID: Date: Thu, 24 Oct 2024 18:52:41 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#3468: drag and drop text To: bug-gnu-emacs@gnu.org References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> <86ed4ux0xj.fsf@gnu.org> <86a5fiwx3e.fsf@gnu.org> <867camwwx8.fsf@gnu.org> <258ce0b8-95b3-4e39-ba52-fc007326c891@imayhem.com> <86msjhvk1n.fsf@gnu.org> <39db8246-18f9-44ea-8678-925af995549f@imayhem.com> <86msjgt96l.fsf@gnu.org> <86o73uspkk.fsf@gnu.org> <3adf9bbb-5c6a-4e6d-83f5-c1d2c6a059d6@imayhem.com> <861q06dk99.fsf@gnu.org> Content-Language: es-ES From: Cecilio Pardo In-Reply-To: <861q06dk99.fsf@gnu.org> Received-SPF: pass client-ip=82.223.54.191; envelope-from=cpardo@imayhem.com; helo=zealous-pike.82-223-54-191.plesk.page X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.3 (-) 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.3 (--) This is a multi-part message in MIME format. --------------CQmF0VugHHVsSY4zNQYqFfzR Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 24/10/2024 9:37, Eli Zaretskii wrote: > What are the reasons for removing save-excursion? > > I guess this also needs a NEWS entry, to announce support for these > two variables on MS-Windows? All fixed now. Thanks for your time. --------------CQmF0VugHHVsSY4zNQYqFfzR Content-Type: text/plain; charset=UTF-8; name="0001-Improve-drag-and-drop-on-MS-Windows-bug-3468.patch" Content-Disposition: attachment; filename="0001-Improve-drag-and-drop-on-MS-Windows-bug-3468.patch" Content-Transfer-Encoding: base64 RnJvbSA5YTJjMjAwMmFjYTgxYWQ3MThkYjRiMTY1YWE1MDEyZGQyMTIwZTRhIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBDZWNpbGlvIFBhcmRvIDxjcGFyZG9AaW1heWhlbS5j b20+CkRhdGU6IFdlZCwgMjMgT2N0IDIwMjQgMTQ6NDE6MjQgKzAyMDAKU3ViamVjdDogW1BB VENIXSBJbXByb3ZlIGRyYWcgYW5kIGRyb3Agb24gTVMtV2luZG93cyAoYnVnIzM0NjgpCgpB ZGQgc3VwcG9ydCBmb3IgJ2RuZC1zY3JvbGwtbWFyZ2luJyBhbmQgJ2RuZC1pbmRpY2F0ZS1p bnNlcnRpb24tcG9pbnQnCmJ5IGNhbGxpbmcgJ2RuZC1oYW5kbGUtbW92ZW1lbnQnIHdoZW4g ZHJhZ2dpbmcgdGhlIG1vdXNlLgoKKiBsaXNwL3Rlcm0vdzMyLXdpbi5lbCAodzMyLWRyYWct bi1kcm9wKTogQ2FsbCAnZG5kLWhhbmRsZS1tb3ZlbWVudCcKd2hlbiBhcHBsaWNhYmxlLgoq IHNyYy93MzJmbnMuYyAodzMyX2hhbmRsZV9kcmFnX21vdmVtZW50KTogTmV3IGZ1bmN0aW9u LCBzZW5kcyBhCldNX0VNQUNTX0RSQUdPVkVSIG1lc3NhZ2UuCih3MzJfZHJvcF90YXJnZXRf RHJhZ0VudGVyKTogQ2FsbCAndzMyX2hhbmRsZV9kcmFnX21vdmVtZW50Jy4KKHczMl9kcm9w X3RhcmdldF9EcmFnT3Zlcik6IENhbGwgJ3czMl9oYW5kbGVfZHJhZ19tb3ZlbWVudCcuCiog c3JjL3czMnRlcm0uYzogKHczMl9yZWFkX3NvY2tldCk6IEhhbmRsZSBXTV9FTUFDU19EUkFH T1ZFUiwKc2VuZGluZyBhIGRyYWctbi1kcm9wIGV2ZW50LgoqIHNyYy93MzJ0ZXJtLmg6IERl ZmluZSBuZXcgV01fRU1BQ1NfRFJBR09WRVIgbWVzc2FnZS4KLS0tCiBldGMvTkVXUyAgICAg ICAgICAgICB8ICA0ICsrKy0KIGxpc3AvdGVybS93MzItd2luLmVsIHwgNTUgKysrKysrKysr KysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0KIHNyYy93MzJmbnMuYyAgICAg ICAgIHwgMTcgKysrKysrKysrKysrKy0KIHNyYy93MzJ0ZXJtLmMgICAgICAgIHwgMTggKysr KysrKysrKysrKysrCiBzcmMvdzMydGVybS5oICAgICAgICB8ICA1ICsrLS0KIDUgZmlsZXMg Y2hhbmdlZCwgNzAgaW5zZXJ0aW9ucygrKSwgMjkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvZXRjL05FV1MgYi9ldGMvTkVXUwppbmRleCBmN2FkNDFiMWI5Zi4uZmZhMTI4Y2MyZmIg MTAwNjQ0Ci0tLSBhL2V0Yy9ORVdTCisrKyBiL2V0Yy9ORVdTCkBAIC03NjIsNyArNzYyLDkg QEAgYW5kIGxhdGVyIHZlcnNpb25zLgogCiAtLS0KICoqIEVtYWNzIG9uIE1TLVdpbmRvd3Mg bm93IHN1cHBvcnRzIGRyYWctbi1kcm9wIG9mIHRleHQgaW50byBhIGJ1ZmZlci4KLVRoaXMg aXMgaW4gYWRkaXRpb24gdG8gZHJhZy1uLWRyb3Agb2YgZmlsZXMsIHRoYXQgd2FzIGFscmVh ZHkgc3VwcG9ydGVkLgorVGhpcyBpcyBpbiBhZGRpdGlvbiB0byBkcmFnLW4tZHJvcCBvZiBm aWxlcywgdGhhdCB3YXMgYWxyZWFkeQorc3VwcG9ydGVkLiBUaGUgY29uZmlndXJhdGlvbiB2 YXJpYWJsZXMgJ2RuZC1zY3JvbGwtbWFyZ2luJyBhbmQKKydkbmQtaW5kaWNhdGUtaW5zZXJ0 aW9uLXBvaW50JyBjYW4gYmUgdXNlZCB0byBjdXN0b21pemUgdGhlIHByb2Nlc3MuCiAKIAwK IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0KZGlmZiAtLWdpdCBhL2xpc3AvdGVybS93MzItd2luLmVsIGIv bGlzcC90ZXJtL3czMi13aW4uZWwKaW5kZXggNTQxZmVmMmNlZDMuLjc1Zjg1MzAwMTBjIDEw MDY0NAotLS0gYS9saXNwL3Rlcm0vdzMyLXdpbi5lbAorKysgYi9saXNwL3Rlcm0vdzMyLXdp bi5lbApAQCAtMTM3LDM1ICsxMzcsNDAgQEAgdzMyLWRyYWctbi1kcm9wCiBJZiBFVkVOVCBp cyBmb3IgdGV4dCwgaW5zZXJ0IHRoYXQgdGV4dCBhdCBwb2ludCBpbnRvIHRoZSBidWZmZXIK IHNob3duIGluIHRoZSB3aW5kb3cgdGhhdCBpcyB0aGUgdGFyZ2V0IG9mIHRoZSBkcm9wOyBp ZiB0aGF0IGJ1ZmZlciBpcwogcmVhZC1vbmx5LCBhZGQgdGhlIGRyb3BwZWQgdGV4dCB0byBr aWxsLXJpbmcuCitJZiBFVkVOVCBwYXlsb2FkIGlzIG5pbCwgdGhlbiB0aGlzIGlzIGEgZHJh ZyBldmVudC4KIElmIHRoZSBvcHRpb25hbCBhcmd1bWVudCBORVctRlJBTUUgaXMgbm9uLW5p bCwgcGVyZm9ybSB0aGUKIGRyYWctbi1kcm9wIGFjdGlvbiBpbiBhIG5ld2x5LWNyZWF0ZWQg ZnJhbWUgdXNpbmcgaXRzIHNlbGVjdGVkLXdpbmRvdwogYW5kIHRoYXQgd2luZG93J3MgYnVm ZmVyLiIKICAgKGludGVyYWN0aXZlICJlIikKLSAgKHNhdmUtZXhjdXJzaW9uCi0gICAgOzsg TWFrZSBzdXJlIHRoZSBkcm9wIHRhcmdldCBoYXMgcG9zaXRpdmUgY28tb3JkcwotICAgIDs7 IGJlZm9yZSBzZXR0aW5nIHRoZSBzZWxlY3RlZCBmcmFtZSAtIG90aGVyd2lzZSBpdAotICAg IDs7IHdvbid0IHdvcmsuICA8c2t4QHRhcmRpcy5lZC5hYy51az4KLSAgICAobGV0KiAoKHdp bmRvdyAocG9zbi13aW5kb3cgKGV2ZW50LXN0YXJ0IGV2ZW50KSkpCi0JICAgKGNvb3JkcyAo cG9zbi14LXkgKGV2ZW50LXN0YXJ0IGV2ZW50KSkpCi0gICAgICAgICAgIChhcmcgKGNhciAo Y2RyIChjZHIgZXZlbnQpKSkpCi0JICAgKHggKGNhciBjb29yZHMpKQotCSAgICh5IChjZHIg Y29vcmRzKSkpCi0gICAgICAoaWYgKGFuZCAoPiB4IDApICg+IHkgMCkpCi0JICAoc2V0LWZy YW1lLXNlbGVjdGVkLXdpbmRvdyBuaWwgd2luZG93KSkKLQotICAgICAgKHdoZW4gbmV3LWZy YW1lCi0gICAgICAgIChzZWxlY3QtZnJhbWUgKG1ha2UtZnJhbWUpKSkKLSAgICAgIChyYWlz ZS1mcmFtZSkKLSAgICAgIChzZXRxIHdpbmRvdyAoc2VsZWN0ZWQtd2luZG93KSkKLQotICAg ICAgOzsgYXJnICh0aGUgcGF5bG9hZCBvZiB0aGUgZXZlbnQpIGlzIGEgc3RyaW5nIHdoZW4g dGhlIGRyb3AgaXMKLSAgICAgIDs7IHRleHQsIGFuZCBhIGxpc3Qgb2Ygc3RyaW5ncyB3aGVu IHRoZSBkcm9wIGlzIG9uZSBvciBtb3JlIGZpbGVzLgotICAgICAgKGlmIChzdHJpbmdwIGFy ZykKLSAgICAgICAgICAoZG5kLWluc2VydC10ZXh0IHdpbmRvdyAnY29weSBhcmcpCi0gICAg ICAgIChkbmQtaGFuZGxlLW11bHRpcGxlLXVybHMKLSAgICAgICAgIHdpbmRvdwotICAgICAg ICAgKG1hcGNhciAjJ3czMi1kcm9wcGVkLWZpbGUtdG8tdXJsIGFyZykKLSAgICAgICAgICdw cml2YXRlKSkpKSkKKyAgOzsgTWFrZSBzdXJlIHRoZSBkcm9wIHRhcmdldCBoYXMgcG9zaXRp dmUgY28tb3JkcworICA7OyBiZWZvcmUgc2V0dGluZyB0aGUgc2VsZWN0ZWQgZnJhbWUgLSBv dGhlcndpc2UgaXQKKyAgOzsgd29uJ3Qgd29yay4gIDxza3hAdGFyZGlzLmVkLmFjLnVrPgor ICAobGV0KiAoKHdpbmRvdyAocG9zbi13aW5kb3cgKGV2ZW50LXN0YXJ0IGV2ZW50KSkpCisJ IChjb29yZHMgKHBvc24teC15IChldmVudC1zdGFydCBldmVudCkpKQorICAgICAgICAgKGFy ZyAoY2FyIChjZHIgKGNkciBldmVudCkpKSkKKwkgKHggKGNhciBjb29yZHMpKQorCSAoeSAo Y2RyIGNvb3JkcykpKQorCisgICAgKGlmIChhbmQgKD4geCAwKSAoPiB5IDApICh3aW5kb3ct bGl2ZS1wIHdpbmRvdykpCisgICAgICAgIChzZXQtZnJhbWUtc2VsZWN0ZWQtd2luZG93IG5p bCB3aW5kb3cpKQorICAgIDs7IERvbid0IGNyZWF0ZSBuZXcgZnJhbWUgaWYgd2UgYXJlIGp1 c3QgZHJhZ2dpbmcKKyAgICAoYW5kIGFyZyBuZXctZnJhbWUKKyAgICAgICAgIChzZWxlY3Qt ZnJhbWUgKG1ha2UtZnJhbWUpKSkKKyAgICAocmFpc2UtZnJhbWUpCisgICAgKHNldHEgd2lu ZG93IChzZWxlY3RlZC13aW5kb3cpKQorCisgICAgOzsgYXJnICh0aGUgcGF5bG9hZCBvZiB0 aGUgZXZlbnQpIGlzIGEgc3RyaW5nIHdoZW4gdGhlIGRyb3AgaXMKKyAgICA7OyB0ZXh0LCBh bmQgYSBsaXN0IG9mIHN0cmluZ3Mgd2hlbiB0aGUgZHJvcCBpcyBvbmUgb3IgbW9yZSBmaWxl cy4KKyAgICA7OyBJdCBpcyBuaWwgaWYgdGhlIGV2ZW50IGlzIGEgZHJhZyBldmVudC4KKyAg ICAoaWYgYXJnCisgICAgICAgIChzYXZlLWV4Y3Vyc2lvbgorICAgICAgICAgIChpZiAoc3Ry aW5ncCBhcmcpCisgICAgICAgICAgICAgIChkbmQtaW5zZXJ0LXRleHQgd2luZG93ICdjb3B5 IGFyZykKKyAgICAgICAgICAgIChkbmQtaGFuZGxlLW11bHRpcGxlLXVybHMKKyAgICAgICAg ICAgICB3aW5kb3cKKyAgICAgICAgICAgICAobWFwY2FyICMndzMyLWRyb3BwZWQtZmlsZS10 by11cmwgYXJnKQorICAgICAgICAgICAgICdwcml2YXRlKSkpCisgICAgICAoZG5kLWhhbmRs ZS1tb3ZlbWVudCAoZXZlbnQtc3RhcnQgZXZlbnQpKSkpKQogCiAoZGVmdW4gdzMyLWRyYWct bi1kcm9wLW90aGVyLWZyYW1lIChldmVudCkKICAgIkVkaXQgdGhlIGZpbGVzIGxpc3RlZCBp biB0aGUgZHJhZy1uLWRyb3AgRVZFTlQsIGluIG90aGVyIGZyYW1lcy4KZGlmZiAtLWdpdCBh L3NyYy93MzJmbnMuYyBiL3NyYy93MzJmbnMuYwppbmRleCAzZWUxM2RjYmJkZC4uZWI0MmQz YjYxYjIgMTAwNjQ0Ci0tLSBhL3NyYy93MzJmbnMuYworKysgYi9zcmMvdzMyZm5zLmMKQEAg LTI1MDUsNyArMjUwNSw2IEBAIHByb2Nlc3NfZHJvcGZpbGVzIChEUk9QRklMRVMgKmZpbGVz KQogICByZXR1cm4gbGlzcF9maWxlczsKIH0KIAotCiAvKiBUaGlzIGZ1bmN0aW9uIGNhbiBi ZSBjYWxsZWQgT05MWSBiZXR3ZWVuIGNhbGxzIHRvCiAgICBibG9ja19pbnB1dC91bmJsb2Nr X2lucHV0LiAgSXQgaXMgdXNlZCBpbiB3MzJfcmVhZF9zb2NrZXQuICAqLwogTGlzcF9PYmpl Y3QKQEAgLTI1NzIsNiArMjU3MSwxOSBAQCB3MzJfZHJvcF90YXJnZXRfUmVsZWFzZSAoSURy b3BUYXJnZXQgKlRoaXMpCiAgIHJldHVybiAwOwogfQogCitzdGF0aWMgdm9pZAordzMyX2hh bmRsZV9kcmFnX21vdmVtZW50IChJRHJvcFRhcmdldCAqVGhpcywgUE9JTlRMIHB0KQorewor ICBzdHJ1Y3QgdzMyX2Ryb3BfdGFyZ2V0ICp0YXJnZXQgPSAoc3RydWN0IHczMl9kcm9wX3Rh cmdldCAqKVRoaXM7CisKKyAgVzMyTXNnIG1zZyA9IHswfTsKKyAgbXNnLmR3TW9kaWZpZXJz ID0gdzMyX2dldF9tb2RpZmllcnMgKCk7CisgIG1zZy5tc2cudGltZSA9IEdldE1lc3NhZ2VU aW1lICgpOworICBtc2cubXNnLnB0LnggPSBwdC54OworICBtc2cubXNnLnB0LnkgPSBwdC55 OworICBteV9wb3N0X21zZyAoJm1zZywgdGFyZ2V0LT5od25kLCBXTV9FTUFDU19EUkFHT1ZF UiwgMCwgMCApOworfQorCiBzdGF0aWMgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRQogdzMy X2Ryb3BfdGFyZ2V0X0RyYWdFbnRlciAoSURyb3BUYXJnZXQgKlRoaXMsIElEYXRhT2JqZWN0 ICpwRGF0YU9iaiwKIAkJCSAgIERXT1JEIGdyZktleVN0YXRlLCBQT0lOVEwgcHQsIERXT1JE ICpwZHdFZmZlY3QpCkBAIC0yNTgxLDYgKzI1OTMsNyBAQCB3MzJfZHJvcF90YXJnZXRfRHJh Z0VudGVyIChJRHJvcFRhcmdldCAqVGhpcywgSURhdGFPYmplY3QgKnBEYXRhT2JqLAogICAg ICBoYXBwZW4gb24gZHJvcC4gIFdlIHNlbmQgQ09QWSBiZWNhdXNlIG91ciB1c2UgY2FzZXMg ZG9uJ3QgbW9kaWZ5CiAgICAgIG9yIGxpbmsgdG8gdGhlIG9yaWdpbmFsIGRhdGEuICAqLwog ICAqcGR3RWZmZWN0ID0gRFJPUEVGRkVDVF9DT1BZOworICB3MzJfaGFuZGxlX2RyYWdfbW92 ZW1lbnQgKFRoaXMsIHB0KTsKICAgcmV0dXJuIFNfT0s7CiB9CiAKQEAgLTI1OTAsNiArMjYw Myw3IEBAIHczMl9kcm9wX3RhcmdldF9EcmFnT3ZlciAoSURyb3BUYXJnZXQgKlRoaXMsIERX T1JEIGdyZktleVN0YXRlLCBQT0lOVEwgcHQsCiB7CiAgIC8qIFNlZSBjb21tZW50IGluIHcz Ml9kcm9wX3RhcmdldF9EcmFnRW50ZXIuICAqLwogICAqcGR3RWZmZWN0ID0gRFJPUEVGRkVD VF9DT1BZOworICB3MzJfaGFuZGxlX2RyYWdfbW92ZW1lbnQgKFRoaXMsIHB0KTsKICAgcmV0 dXJuIFNfT0s7CiB9CiAKQEAgLTM2MDcsNiArMzYyMSw3IEBAICNkZWZpbmUgTShtc2cpIHsg bXNnLCAjIG1zZyB9CiAgICAgICBNIChXTV9FTUFDU19QQUlOVCksCiAgICAgICBNIChXTV9F TUFDU19JTUVfU1RBVFVTKSwKICAgICAgIE0gKFdNX0NIQVIpLAorICAgICAgTSAoV01fRU1B Q1NfRFJBR09WRVIpLAogICAgICAgTSAoV01fRU1BQ1NfRFJPUCksCiAjdW5kZWYgTQogICAg ICAgeyAwLCAwIH0KZGlmZiAtLWdpdCBhL3NyYy93MzJ0ZXJtLmMgYi9zcmMvdzMydGVybS5j CmluZGV4IDNhNjI3MzA4MTM3Li44ODYyMjcwMDM4NiAxMDA2NDQKLS0tIGEvc3JjL3czMnRl cm0uYworKysgYi9zcmMvdzMydGVybS5jCkBAIC01NjI5LDYgKzU2MjksMjQgQEAgdzMyX3Jl YWRfc29ja2V0IChzdHJ1Y3QgdGVybWluYWwgKnRlcm1pbmFsLAogCSAgfQogCSAgYnJlYWs7 CiAKKwljYXNlIFdNX0VNQUNTX0RSQUdPVkVSOgorCSAgeworCSAgICBmID0gdzMyX3dpbmRv d190b19mcmFtZSAoZHB5aW5mbywgbXNnLm1zZy5od25kKTsKKwkgICAgaWYgKCFmKQorCSAg ICAgIGJyZWFrOworCSAgICBYU0VURlJBTUUgKGluZXYuZnJhbWVfb3Jfd2luZG93LCBmKTsK KwkgICAgaW5ldi5raW5kID0gRFJBR19OX0RST1BfRVZFTlQ7CisJICAgIGluZXYuY29kZSA9 IDA7CisJICAgIGluZXYudGltZXN0YW1wID0gbXNnLm1zZy50aW1lOworCSAgICBpbmV2Lm1v ZGlmaWVycyA9IG1zZy5kd01vZGlmaWVyczsKKwkgICAgU2NyZWVuVG9DbGllbnQgKG1zZy5t c2cuaHduZCwgJm1zZy5tc2cucHQpOworCSAgICBYU0VUSU5UIChpbmV2LngsIG1zZy5tc2cu cHQueCk7CisJICAgIFhTRVRJTlQgKGluZXYueSwgbXNnLm1zZy5wdC55KTsKKwkgICAgLyog VGhpcyBpcyBhIGRyYWcgbW92ZW1lbnQuICAqLworCSAgICBpbmV2LmFyZyA9IFFuaWw7CisJ ICAgIGJyZWFrOworCSAgfQorCiAJY2FzZSBXTV9IU0NST0xMOgogCSAgewogCSAgICBzdHJ1 Y3Qgc2Nyb2xsX2JhciAqYmFyID0KZGlmZiAtLWdpdCBhL3NyYy93MzJ0ZXJtLmggYi9zcmMv dzMydGVybS5oCmluZGV4IDM5ZTIyNjJlMmE4Li5jYWQ5ZmNmOGNiMSAxMDA2NDQKLS0tIGEv c3JjL3czMnRlcm0uaAorKysgYi9zcmMvdzMydGVybS5oCkBAIC03MTEsOCArNzExLDkgQEAg I2RlZmluZSBXTV9FTUFDU19CUklOR1RPVE9QICAgICAgICAgICAgKFdNX0VNQUNTX1NUQVJU ICsgMjMpCiAjZGVmaW5lIFdNX0VNQUNTX0lOUFVUX1JFQURZICAgICAgICAgICAoV01fRU1B Q1NfU1RBUlQgKyAyNCkKICNkZWZpbmUgV01fRU1BQ1NfRklMRU5PVElGWSAgICAgICAgICAg IChXTV9FTUFDU19TVEFSVCArIDI1KQogI2RlZmluZSBXTV9FTUFDU19JTUVfU1RBVFVTICAg ICAgICAgICAgKFdNX0VNQUNTX1NUQVJUICsgMjYpCi0jZGVmaW5lIFdNX0VNQUNTX0RST1Ag ICAgICAgICAgICAgICAgICAoV01fRU1BQ1NfU1RBUlQgKyAyNykKLSNkZWZpbmUgV01fRU1B Q1NfRU5EICAgICAgICAgICAgICAgICAgIChXTV9FTUFDU19TVEFSVCArIDI4KQorI2RlZmlu ZSBXTV9FTUFDU19EUkFHT1ZFUiAgICAgICAgICAgICAgKFdNX0VNQUNTX1NUQVJUICsgMjcp CisjZGVmaW5lIFdNX0VNQUNTX0RST1AgICAgICAgICAgICAgICAgICAoV01fRU1BQ1NfU1RB UlQgKyAyOCkKKyNkZWZpbmUgV01fRU1BQ1NfRU5EICAgICAgICAgICAgICAgICAgIChXTV9F TUFDU19TVEFSVCArIDI5KQogCiAjZGVmaW5lIFdORF9GT05UV0lEVEhfSU5ERVggICAgKDAp CiAjZGVmaW5lIFdORF9MSU5FSEVJR0hUX0lOREVYICAgKDQpCi0tIAoyLjM1LjEud2luZG93 cy4yCgo= --------------CQmF0VugHHVsSY4zNQYqFfzR-- From debbugs-submit-bounces@debbugs.gnu.org Fri Oct 25 06:43:52 2024 Received: (at 3468-done) by debbugs.gnu.org; 25 Oct 2024 10:43:52 +0000 Received: from localhost ([127.0.0.1]:37501 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t4HnL-0004zN-Qd for submit@debbugs.gnu.org; Fri, 25 Oct 2024 06:43:52 -0400 Received: from eggs.gnu.org ([209.51.188.92]:53150) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1t4HnJ-0004z8-DG for 3468-done@debbugs.gnu.org; Fri, 25 Oct 2024 06:43:50 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1t4Hmh-0003FW-Pw; Fri, 25 Oct 2024 06:43:11 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=201KERMhDOZNVLNjSyO+xbXazEvPNYSKm8N2EWMxPns=; b=PKV9kGbgPGp8 MfJzUWj/7AzUM6xD7UmtUshUp4W/ogcaTitUsphvjV2LNjKkweVVwzL+92PYKYY7Es7iw/oeL8lQD VZJpIQM6GTaMk3OcGrEgXy7RSIpDmkoHwaWBbj7sUYSJSxTvAdWrVy/IkHu8MCORo3YddgIlCwNvG iKVZL4fBYVlOveWF+p4aIyimrg8FEwvjFTRbS1PimfVlfB/WDja5WxAxeI7V36ZIq7pLj1FpHbksr 8hh62ovqV2n3M2zIR0PIxONKZn4AJVo79xJnIoyC4HUuuqRZxILGlr2qi7FdaqnN9dOi0HdDnVnUr AyfsSeergT8gMH/MEeGlvA==; Date: Fri, 25 Oct 2024 13:43:09 +0300 Message-Id: <86plnobgzm.fsf@gnu.org> From: Eli Zaretskii To: Cecilio Pardo In-Reply-To: (message from Cecilio Pardo on Thu, 24 Oct 2024 18:52:41 +0200) Subject: Re: bug#3468: drag and drop text References: <20090604070321.177690@gmx.net> <8ba4e567-550e-4ac2-96f4-c6f7bacd78d0@imayhem.com> <86wmiv3p0r.fsf@gnu.org> <9bef55ae-e0aa-40d0-af77-7e7eac309b3a@imayhem.com> <86msjq4rp5.fsf@gnu.org> <55f3d9b3-4a46-4ca1-9f84-c3bf99d1c403@imayhem.com> <86ed4ux0xj.fsf@gnu.org> <86a5fiwx3e.fsf@gnu.org> <867camwwx8.fsf@gnu.org> <258ce0b8-95b3-4e39-ba52-fc007326c891@imayhem.com> <86msjhvk1n.fsf@gnu.org> <39db8246-18f9-44ea-8678-925af995549f@imayhem.com> <86msjgt96l.fsf@gnu.org> <86o73uspkk.fsf@gnu.org> <3adf9bbb-5c6a-4e6d-83f5-c1d2c6a059d6@imayhem.com> <861q06dk99.fsf@gnu.org> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 3468-done Cc: 3468-done@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: -3.3 (---) > Date: Thu, 24 Oct 2024 18:52:41 +0200 > From: Cecilio Pardo > > On 24/10/2024 9:37, Eli Zaretskii wrote: > > > What are the reasons for removing save-excursion? > > > > I guess this also needs a NEWS entry, to announce support for these > > two variables on MS-Windows? > > All fixed now. Thanks, installed on the master branch, and closing the bug. From unknown Fri Aug 15 20:48:25 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Fri, 22 Nov 2024 12:24:12 +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