emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 20b27d475f: Simplify XDND code


From: Po Lu
Subject: master 20b27d475f: Simplify XDND code
Date: Mon, 9 May 2022 22:39:47 -0400 (EDT)

branch: master
commit 20b27d475f1c2de97c7cd94eece986ed16e83cc8
Author: Po Lu <luangruo@yahoo.com>
Commit: Po Lu <luangruo@yahoo.com>

    Simplify XDND code
    
    * src/xfns.c (Fx_begin_drag): Use SAFE_ALLOCA_STRING and encode
    strings in the right coding system.
---
 src/xfns.c | 14 ++++----------
 1 file changed, 4 insertions(+), 10 deletions(-)

diff --git a/src/xfns.c b/src/xfns.c
index 7dbf1e16c3..5522684170 100644
--- a/src/xfns.c
+++ b/src/xfns.c
@@ -6822,14 +6822,12 @@ mouse buttons are released on top of FRAME.  */)
 {
   struct frame *f = decode_window_system_frame (frame);
   int ntargets = 0, nnames = 0;
-  ptrdiff_t len;
   char *target_names[2048];
   Atom *target_atoms;
   Lisp_Object lval, original, tem, t1, t2;
   Atom xaction;
   Atom action_list[2048];
   char *name_list[2048];
-  char *scratch;
 
   USE_SAFE_ALLOCA;
 
@@ -6843,10 +6841,8 @@ mouse buttons are released on top of FRAME.  */)
 
       if (ntargets < 2048)
        {
-         scratch = SSDATA (XCAR (targets));
-         len = strlen (scratch);
-         target_names[ntargets] = SAFE_ALLOCA (len + 1);
-         strncpy (target_names[ntargets], scratch, len + 1);
+         SAFE_ALLOCA_STRING (target_names[ntargets],
+                             XCAR (targets));
          ntargets++;
        }
       else
@@ -6896,10 +6892,8 @@ mouse buttons are released on top of FRAME.  */)
              else
                signal_error ("Invalid drag-and-drop action", tem);
 
-             scratch = SSDATA (ENCODE_UTF_8 (t2));
-             len = strlen (scratch);
-             name_list[nnames] = SAFE_ALLOCA (len + 1);
-             strncpy (name_list[nnames], scratch, len + 1);
+             SAFE_ALLOCA_STRING (name_list[nnames],
+                                 ENCODE_SYSTEM (t2));
 
              nnames++;
            }



reply via email to

[Prev in Thread] Current Thread [Next in Thread]