unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#59875: 30.0.50; [PATCH] fallout c73f99f
@ 2022-12-07  5:08 dick
  2022-12-08  0:51 ` Stefan Kangas
  2022-12-08  1:58 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
  0 siblings, 2 replies; 3+ messages in thread
From: dick @ 2022-12-07  5:08 UTC (permalink / raw)
  To: 59875

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: 0001-Squashed-commit-of-the-following.patch --]
[-- Type: text/x-diff, Size: 1640 bytes --]

From 661d89a09b6beb9694250f7d91b0b4b47ecc6c61 Mon Sep 17 00:00:00 2001
From: dickmao <dick.r.chiang@gmail.com>
Date: Wed, 7 Dec 2022 00:03:17 -0500
Subject: [PATCH] Squashed commit of the following:

commit 18220432ba76608d579b00a96e03567b715461da
Author: dickmao <none>
Date:   Tue Dec 6 23:55:17 2022 -0500

    fallout c73f99f
---
 src/xselect.c | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/src/xselect.c b/src/xselect.c
index 121b17df1b0..78820cb3a7c 100644
--- a/src/xselect.c
+++ b/src/xselect.c
@@ -624,6 +624,13 @@ x_pop_current_selection_request (void)
   xfree (tem);
 }
 
+static bool
+x_selection_for_multiple (struct selection_data *data)
+{
+  return (Atom *) data->data
+    == &selection_request_stack->conversion_fail_tag;
+}
+
 /* Used as an unwind-protect clause so that, if a selection-converter signals
    an error, we tell the requestor that we were unable to do what they wanted
    before we throw to top-level or go into the debugger or whatever.  */
@@ -639,7 +646,7 @@ x_selection_request_lisp_error (void)
   for (cs = frame->converted_selections; cs; cs = next)
     {
       next = cs->next;
-      if (cs->data)
+      if (cs->data && ! x_selection_for_multiple (cs))
 	xfree (cs->data);
       xfree (cs);
     }
@@ -839,8 +846,7 @@ x_start_selection_transfer (struct x_display_info *dpyinfo, Window requestor,
   secs = timeout / 1000;
   nsecs = (timeout % 1000) * 1000000;
 
-  if ((Atom *) data->data
-      == &selection_request_stack->conversion_fail_tag)
+  if (x_selection_for_multiple (data))
     return;
 
   transfer = xzalloc (sizeof *transfer);
-- 
2.36.1


[-- Attachment #2: Type: text/plain, Size: 12775 bytes --]




In Commercial Emacs 0.3.1snapshot 0c65c33 in dev (upstream 30.0.50,
x86_64-pc-linux-gnu) built on dick
Repository revision: 0c65c33e62efb993b422fc53c4551bd406e69309
Repository branch: dev
Windowing system distributor 'The X.Org Foundation', version 11.0.12013000
System Description: Ubuntu 20.04.4 LTS

Configured using:
 'configure WERROR_CFLAGS=-Werror --prefix=/home/dick/.local
 --with-tree-sitter CC=gcc-10
 PKG_CONFIG_PATH=/home/dick/.local/lib/pkgconfig CXX=gcc-10'

Configured features:
CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON
TREE_SITTER LCMS2 LIBSELINUX LIBXML2 MODULES NOTIFY INOTIFY PDUMPER PNG
RSVG SECCOMP SOUND THREADS TIFF TOOLKIT_SCROLL_BARS WEBP X11 XDBE XIM
XINPUT2 XPM GTK3 ZLIB

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Magit Log

Minor modes in effect:
  global-git-commit-mode: t
  shell-dirtrack-mode: t
  projectile-mode: t
  flx-ido-mode: t
  global-xlsp-mode: t
  global-hl-line-mode: t
  hl-line-mode: t
  winner-mode: t
  override-global-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  show-paren-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  buffer-read-only: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t

Load-path shadows:
/home/dick/gomacro-mode/gomacro-mode hides /home/dick/.emacs.d/elpa/gomacro-mode-20200326.1103/gomacro-mode
/home/dick/.emacs.d/elpa/go-rename-20190805.2101/go-rename hides /home/dick/.emacs.d/elpa/go-mode-1.6.0/go-rename
/home/dick/.emacs.d/elpa/go-guru-20181012.330/go-guru hides /home/dick/.emacs.d/elpa/go-mode-1.6.0/go-guru
/home/dick/.emacs.d/elpa/hydra-20170924.2259/lv hides /home/dick/.emacs.d/elpa/lv-0.1.0.1snapshot20200507.1518/lv
/home/dick/org-gcal.el/org-gcal hides /home/dick/.emacs.d/elpa/org-gcal-0.3/org-gcal
/home/dick/.emacs.d/elpa/request-deferred-0.2.0/request-deferred hides /home/dick/.emacs.d/elpa/request-0.3.3/request-deferred
/home/dick/.emacs.d/elpa/chess-2.0.5/_pkg hides /home/dick/.local/share/emacs/site-lisp/_pkg
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-pos hides /home/dick/.local/share/emacs/site-lisp/chess-pos
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-module hides /home/dick/.local/share/emacs/site-lisp/chess-module
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-ucb hides /home/dick/.local/share/emacs/site-lisp/chess-ucb
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-scid hides /home/dick/.local/share/emacs/site-lisp/chess-scid
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-puzzle hides /home/dick/.local/share/emacs/site-lisp/chess-puzzle
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-irc hides /home/dick/.local/share/emacs/site-lisp/chess-irc
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-network hides /home/dick/.local/share/emacs/site-lisp/chess-network
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-autosave hides /home/dick/.local/share/emacs/site-lisp/chess-autosave
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-engine hides /home/dick/.local/share/emacs/site-lisp/chess-engine
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-tutorial hides /home/dick/.local/share/emacs/site-lisp/chess-tutorial
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-german hides /home/dick/.local/share/emacs/site-lisp/chess-german
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-file hides /home/dick/.local/share/emacs/site-lisp/chess-file
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-random hides /home/dick/.local/share/emacs/site-lisp/chess-random
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-stockfish hides /home/dick/.local/share/emacs/site-lisp/chess-stockfish
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-pgn hides /home/dick/.local/share/emacs/site-lisp/chess-pgn
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-kibitz hides /home/dick/.local/share/emacs/site-lisp/chess-kibitz
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-eco hides /home/dick/.local/share/emacs/site-lisp/chess-eco
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-display hides /home/dick/.local/share/emacs/site-lisp/chess-display
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-var hides /home/dick/.local/share/emacs/site-lisp/chess-var
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-test hides /home/dick/.local/share/emacs/site-lisp/chess-test
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-ply hides /home/dick/.local/share/emacs/site-lisp/chess-ply
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-message hides /home/dick/.local/share/emacs/site-lisp/chess-message
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-ics1 hides /home/dick/.local/share/emacs/site-lisp/chess-ics1
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-phalanx hides /home/dick/.local/share/emacs/site-lisp/chess-phalanx
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-game hides /home/dick/.local/share/emacs/site-lisp/chess-game
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-log hides /home/dick/.local/share/emacs/site-lisp/chess-log
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-plain hides /home/dick/.local/share/emacs/site-lisp/chess-plain
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-perft hides /home/dick/.local/share/emacs/site-lisp/chess-perft
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-glaurung hides /home/dick/.local/share/emacs/site-lisp/chess-glaurung
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-ai hides /home/dick/.local/share/emacs/site-lisp/chess-ai
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-fruit hides /home/dick/.local/share/emacs/site-lisp/chess-fruit
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-uci hides /home/dick/.local/share/emacs/site-lisp/chess-uci
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-epd hides /home/dick/.local/share/emacs/site-lisp/chess-epd
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-database hides /home/dick/.local/share/emacs/site-lisp/chess-database
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-link hides /home/dick/.local/share/emacs/site-lisp/chess-link
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-transport hides /home/dick/.local/share/emacs/site-lisp/chess-transport
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-none hides /home/dick/.local/share/emacs/site-lisp/chess-none
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-polyglot hides /home/dick/.local/share/emacs/site-lisp/chess-polyglot
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-crafty hides /home/dick/.local/share/emacs/site-lisp/chess-crafty
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-chat hides /home/dick/.local/share/emacs/site-lisp/chess-chat
/home/dick/.emacs.d/elpa/chess-2.0.5/chess hides /home/dick/.local/share/emacs/site-lisp/chess
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-images hides /home/dick/.local/share/emacs/site-lisp/chess-images
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-gnuchess hides /home/dick/.local/share/emacs/site-lisp/chess-gnuchess
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-fen hides /home/dick/.local/share/emacs/site-lisp/chess-fen
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-ics hides /home/dick/.local/share/emacs/site-lisp/chess-ics
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-ics2 hides /home/dick/.local/share/emacs/site-lisp/chess-ics2
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-common hides /home/dick/.local/share/emacs/site-lisp/chess-common
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-input hides /home/dick/.local/share/emacs/site-lisp/chess-input
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-announce hides /home/dick/.local/share/emacs/site-lisp/chess-announce
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-clock hides /home/dick/.local/share/emacs/site-lisp/chess-clock
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-sound hides /home/dick/.local/share/emacs/site-lisp/chess-sound
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-sjeng hides /home/dick/.local/share/emacs/site-lisp/chess-sjeng
/home/dick/.emacs.d/elpa/chess-2.0.5/chess-algebraic hides /home/dick/.local/share/emacs/site-lisp/chess-algebraic
/home/dick/.emacs.d/elpa/transient-0.3.7snapshot/transient hides /home/dick/.local/share/emacs/0.3.1/lisp/transient

Features:
(shadow sort vc-svn footnote mail-extr gnus-msg gnus-art mm-uu mml2015
mm-view mml-smime smime gnutls dig gnus-sum shr pixel-fill kinsoku
url-file svg dom gnus-group mm-url gnus-undo gnus-start gnus-dbus dbus
xml gnus-cloud nnimap nnmail mail-source utf7 nnoo parse-time iso8601
gnus-spec gnus-int gnus-range gnus-win magit-extras mule-util face-remap
magit-patch-changelog magit-patch magit-submodule magit-obsolete
magit-blame magit-stash magit-reflog magit-bisect magit-push magit-pull
magit-fetch magit-clone magit-remote magit-commit magit-sequence
magit-notes magit-worktree magit-tag magit-merge magit-branch
magit-reset magit-files magit-refs magit-status magit magit-repos
magit-apply magit-wip magit-log which-func imenu edebug debug backtrace
magit-diff smerge-mode diff diff-mode git-commit log-edit pcvs-util
add-log magit-core magit-margin magit-transient magit-process
with-editor shell pcomplete server magit-mode transient emacsbug message
yank-media puny dired-x dired dired-loaddefs rfc822 mml mml-sec epa epg
rfc6068 epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums
paredit-ext paredit inf-ruby ruby-mode smie haskell-interactive-mode
haskell-presentation-mode haskell-process haskell-session
haskell-compile haskell-mode haskell-cabal haskell-utils
haskell-font-lock haskell-indentation haskell-string
haskell-sort-imports haskell-lexeme haskell-align-imports
haskell-complete-module haskell-ghc-support noutline outline
flymake-proc flymake etags fileloop generator dabbrev haskell-customize
hydra lv use-package-ensure solarized-theme solarized-definitions
projectile lisp-mnt ibuf-ext ibuffer ibuffer-loaddefs thingatpt
magit-autorevert autorevert magit-git magit-base magit-section
format-spec crm dash rx compat-27 compat-26 compat grep compile comint
ansi-osc ansi-color gnus nnheader range mail-utils mm-util mail-prsvr
gnus-util text-property-search time-date flx-ido flx xlsp xlsp-xref
xlsp-server xlsp-company company-capf company xlsp-handle-notification
xlsp-handle-request xlsp-struct xlsp-utils jsonrpc pcase warnings
filenotify google-translate-default-ui google-translate-core-ui facemenu
color ido google-translate-core google-translate-tk
google-translate-backend auto-complete advice popup cus-edit pp cus-load
icons wid-edit emms-player-mplayer emms-player-simple emms emms-compat
hl-line winner edmacro kmacro cl-extra help-mode xref project ring
use-package-bind-key bind-key easy-mmode use-package-core derived
company-go-autoloads corfu-autoloads debbugs-autoloads
elpaso-disc-autoloads elpaso-autoloads find-func flycheck-autoloads
finder-inf go-mode-autoloads json-reformat-autoloads
json-snatcher-autoloads lsp-bridge-autoloads lsp-mode-autoloads
lv-autoloads magit-autoloads nnreddit-autoloads cask-autoloads
epl-autoloads posframe-autoloads projectile-autoloads
rust-mode-autoloads sml-mode-autoloads tornado-template-mode-autoloads
typescript-mode-autoloads request-autoloads info wordnut-autoloads
xlsp-autoloads markdown-mode-autoloads company-autoloads
yasnippet-autoloads package browse-url url url-proxy url-privacy
url-expand url-methods url-history url-cookie generate-lisp-file
url-domsuf url-util mailcap url-handlers url-parse auth-source cl-seq
eieio eieio-core cl-macs password-cache json subr-x map byte-opt gv
bytecomp byte-compile cldefs url-vars cl-loaddefs cl-lib rmc iso-transl
tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks
lisp-float-type elisp-mode mwheel term/x-win x-win term/common-win x-dnd
tool-bar dnd fontset image regexp-opt fringe tabulated-list replace
newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar
rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock
font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq
simple cl-generic indonesian philippine cham georgian utf-8-lang
misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms
cp51932 hebrew greek romanian slovak czech european ethiopic indian
cyrillic chinese composite emoji-zwj charscript charprop case-table
epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button
loaddefs theme-loaddefs faces cus-face macroexp files window
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget keymap hashtable-print-readable backquote threads dbusbind
inotify lcms2 dynamic-setting system-font-setting font-render-setting
cairo move-toolbar gtk x-toolkit xinput2 x multi-tty
make-network-process emacs)

Memory information:
((conses 16 630570 17130)
 (symbols 48 39314 0)
 (strings 32 142172 8426)
 (string-bytes 1 4801429)
 (vectors 16 58996)
 (vector-slots 8 726471 9149)
 (floats 8 386 563)
 (intervals 56 3035 355)
 (buffers 984 12))

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* bug#59875: 30.0.50; [PATCH] fallout c73f99f
  2022-12-07  5:08 bug#59875: 30.0.50; [PATCH] fallout c73f99f dick
@ 2022-12-08  0:51 ` Stefan Kangas
  2022-12-08  1:58 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
  1 sibling, 0 replies; 3+ messages in thread
From: Stefan Kangas @ 2022-12-08  0:51 UTC (permalink / raw)
  To: dick, 59875

dick <dick.r.chiang@gmail.com> writes:

> commit 18220432ba76608d579b00a96e03567b715461da
> Author: dickmao <none>
> Date:   Tue Dec 6 23:55:17 2022 -0500
>
>     fallout c73f99f

$ git show c73f99f
fatal: ambiguous argument 'c73f99f': unknown revision or path not in
the working tree.





^ permalink raw reply	[flat|nested] 3+ messages in thread

* bug#59875: 30.0.50; [PATCH] fallout c73f99f
  2022-12-07  5:08 bug#59875: 30.0.50; [PATCH] fallout c73f99f dick
  2022-12-08  0:51 ` Stefan Kangas
@ 2022-12-08  1:58 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
  1 sibling, 0 replies; 3+ messages in thread
From: Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2022-12-08  1:58 UTC (permalink / raw)
  To: dick; +Cc: 59875-done

dick <dick.r.chiang@gmail.com> writes:

>  src/xselect.c | 12 +++++++++---
>  1 file changed, 9 insertions(+), 3 deletions(-)
>
> diff --git a/src/xselect.c b/src/xselect.c
> index 121b17df1b0..78820cb3a7c 100644
> --- a/src/xselect.c
> +++ b/src/xselect.c
> @@ -624,6 +624,13 @@ x_pop_current_selection_request (void)
>    xfree (tem);
>  }
>  
> +static bool
> +x_selection_for_multiple (struct selection_data *data)
> +{
> +  return (Atom *) data->data
> +    == &selection_request_stack->conversion_fail_tag;
> +}
> +
>  /* Used as an unwind-protect clause so that, if a selection-converter signals
>     an error, we tell the requestor that we were unable to do what they wanted
>     before we throw to top-level or go into the debugger or whatever.  */
> @@ -639,7 +646,7 @@ x_selection_request_lisp_error (void)
>    for (cs = frame->converted_selections; cs; cs = next)
>      {
>        next = cs->next;
> -      if (cs->data)
> +      if (cs->data && ! x_selection_for_multiple (cs))
>  	xfree (cs->data);
>        xfree (cs);
>      }
> @@ -839,8 +846,7 @@ x_start_selection_transfer (struct x_display_info *dpyinfo, Window requestor,
>    secs = timeout / 1000;
>    nsecs = (timeout % 1000) * 1000000;
>  
> -  if ((Atom *) data->data
> -      == &selection_request_stack->conversion_fail_tag)
> +  if (x_selection_for_multiple (data))
>      return;
>  
>    transfer = xzalloc (sizeof *transfer);

No.  I will install a better fix and am closing this bug.
Don't you think `x_selection_for_multiple' is a misleading name? Did you
try to understand the code there?

In addition, if you do not write even a real commit message for a patch
you attach, or explain what it fixes, you are simply wasting everyone
else's time.  If you see a bug, it's better to just report it rather
than submitting a patch like this.





^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2022-12-08  1:58 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-12-07  5:08 bug#59875: 30.0.50; [PATCH] fallout c73f99f dick
2022-12-08  0:51 ` Stefan Kangas
2022-12-08  1:58 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).