From a7c4c7237cc4497b0cf7c845b9b8249d5a523ae0 Mon Sep 17 00:00:00 2001 From: Sebastien Helleu Date: Thu, 14 Jul 2005 16:35:59 +0000 Subject: [PATCH] Added control in clipboard copy function --- src/gui/gui-common.c | 20 +++++++++++--------- weechat/src/gui/gui-common.c | 20 +++++++++++--------- 2 files changed, 22 insertions(+), 18 deletions(-) diff --git a/src/gui/gui-common.c b/src/gui/gui-common.c index 2cb5a6fb2..0d28ae824 100644 --- a/src/gui/gui-common.c +++ b/src/gui/gui-common.c @@ -1087,16 +1087,18 @@ gui_input_clipboard_paste () void gui_input_clipboard_copy (char *buffer, int size) { - - if (gui_input_clipboard != NULL) - free(gui_input_clipboard); - - gui_input_clipboard = (char *) malloc( (size + 1) * sizeof(*gui_input_clipboard)); - - if (gui_input_clipboard) + if (size <= 0) + return; + + if (gui_input_clipboard != NULL) + free(gui_input_clipboard); + + gui_input_clipboard = (char *) malloc( (size + 1) * sizeof(*gui_input_clipboard)); + + if (gui_input_clipboard) { - memcpy(gui_input_clipboard, buffer, size); - gui_input_clipboard[size] = '\0'; + memcpy(gui_input_clipboard, buffer, size); + gui_input_clipboard[size] = '\0'; } } diff --git a/weechat/src/gui/gui-common.c b/weechat/src/gui/gui-common.c index 2cb5a6fb2..0d28ae824 100644 --- a/weechat/src/gui/gui-common.c +++ b/weechat/src/gui/gui-common.c @@ -1087,16 +1087,18 @@ gui_input_clipboard_paste () void gui_input_clipboard_copy (char *buffer, int size) { - - if (gui_input_clipboard != NULL) - free(gui_input_clipboard); - - gui_input_clipboard = (char *) malloc( (size + 1) * sizeof(*gui_input_clipboard)); - - if (gui_input_clipboard) + if (size <= 0) + return; + + if (gui_input_clipboard != NULL) + free(gui_input_clipboard); + + gui_input_clipboard = (char *) malloc( (size + 1) * sizeof(*gui_input_clipboard)); + + if (gui_input_clipboard) { - memcpy(gui_input_clipboard, buffer, size); - gui_input_clipboard[size] = '\0'; + memcpy(gui_input_clipboard, buffer, size); + gui_input_clipboard[size] = '\0'; } }