40 lines
1.7 KiB
Diff
40 lines
1.7 KiB
Diff
diff -up xclip-11cba613840b0d0e76dc2ea6d4ec7cc5f23daf88/xclip.c.1947285 xclip-11cba613840b0d0e76dc2ea6d4ec7cc5f23daf88/xclip.c
|
|
--- xclip-11cba613840b0d0e76dc2ea6d4ec7cc5f23daf88/xclip.c.1947285 2020-11-08 09:01:39.000000000 -0500
|
|
+++ xclip-11cba613840b0d0e76dc2ea6d4ec7cc5f23daf88/xclip.c 2022-02-22 18:04:44.598444273 -0500
|
|
@@ -353,7 +353,7 @@ doOptTarget(void)
|
|
static int
|
|
doIn(Window win, const char *progname)
|
|
{
|
|
- unsigned char *sel_buf; /* buffer for selection data */
|
|
+ unsigned char *sel_buf = NULL; /* buffer for selection data */
|
|
unsigned long sel_len = 0; /* length of sel_buf */
|
|
unsigned long sel_all = 0; /* allocated size of sel_buf */
|
|
XEvent evt; /* X Event Structures */
|
|
@@ -714,9 +714,9 @@ static int
|
|
doOut(Window win)
|
|
{
|
|
Atom sel_type = None;
|
|
- unsigned char *sel_buf; /* buffer for selection data */
|
|
- unsigned long sel_len = 0; /* length of sel_buf */
|
|
- XEvent evt; /* X Event Structures */
|
|
+ unsigned char *sel_buf = NULL; /* buffer for selection data */
|
|
+ unsigned long sel_len = 0; /* length of sel_buf */
|
|
+ XEvent evt; /* X Event Structures */
|
|
unsigned int context = XCLIB_XCOUT_NONE;
|
|
|
|
if (sseln == XA_STRING)
|
|
@@ -743,9 +743,11 @@ doOut(Window win)
|
|
/* If user requested -sensitive, then prevent further pastes (even though we failed to paste) */
|
|
XSetSelectionOwner(dpy, sseln, None, CurrentTime);
|
|
/* Clear memory buffer */
|
|
- xcmemzero(sel_buf,sel_len);
|
|
+ if (sel_buf != NULL)
|
|
+ xcmemzero(sel_buf,sel_len);
|
|
}
|
|
- free(sel_buf);
|
|
+ if (sel_buf != NULL)
|
|
+ free(sel_buf);
|
|
errconvsel(dpy, target, sseln);
|
|
// errconvsel does not return but exits with EXIT_FAILURE
|
|
}
|