* Re: [Emacs-diffs] emacs/src term.c
[not found] <E1L9hLb-000768-Bm@cvs.savannah.gnu.org>
@ 2008-12-08 18:23 ` Emanuele Giaquinta
0 siblings, 0 replies; only message in thread
From: Emanuele Giaquinta @ 2008-12-08 18:23 UTC (permalink / raw)
To: Chong Yidong; +Cc: emacs-devel
[-- Attachment #1: Type: text/plain, Size: 1346 bytes --]
On Mon, Dec 08, 2008 at 02:44:31PM +0000, Chong Yidong wrote:
> Index: term.c
> ===================================================================
> RCS file: /sources/emacs/emacs/src/term.c,v
> retrieving revision 1.229
> retrieving revision 1.230
> diff -u -b -r1.229 -r1.230
> --- term.c 27 Sep 2008 10:50:48 -0000 1.229
> +++ term.c 8 Dec 2008 14:44:30 -0000 1.230
> @@ -581,10 +581,10 @@
> required = MAX_MULTIBYTE_LENGTH * src_len;
> if (encode_terminal_src_size < required)
> {
> - if (encode_terminal_src_size == 0)
> - encode_terminal_src = xmalloc (required);
> - else
> + if (encode_terminal_src)
> encode_terminal_src = xrealloc (encode_terminal_src, required);
> + else
> + encode_terminal_src = xmalloc (required);
> encode_terminal_src_size = required;
> }
>
> @@ -740,6 +740,10 @@
> if (encode_terminal_dst_size == 0)
> {
> encode_terminal_dst_size = encode_terminal_src_size;
> + if (encode_terminal_dst)
> + encode_terminal_dst = xrealloc (encode_terminal_dst,
> + encode_terminal_dst_size);
> + else
> encode_terminal_dst = xmalloc (encode_terminal_dst_size);
> }
> coding->destination = encode_terminal_dst;
Any reason to not simply use realloc? (realloc(NULL, size) == malloc(size))
A patch is attached in case it is ok.
Emanuele
[-- Attachment #2: realloc.diff --]
[-- Type: text/x-diff, Size: 1645 bytes --]
diff --git a/src/term.c b/src/term.c
index 32bc4f6..dc0cb38 100644
--- a/src/term.c
+++ b/src/term.c
@@ -581,10 +581,7 @@ encode_terminal_code (src, src_len, coding)
required = MAX_MULTIBYTE_LENGTH * src_len;
if (encode_terminal_src_size < required)
{
- if (encode_terminal_src)
encode_terminal_src = xrealloc (encode_terminal_src, required);
- else
- encode_terminal_src = xmalloc (required);
encode_terminal_src_size = required;
}
@@ -740,11 +737,8 @@ encode_terminal_code (src, src_len, coding)
if (encode_terminal_dst_size == 0)
{
encode_terminal_dst_size = encode_terminal_src_size;
- if (encode_terminal_dst)
encode_terminal_dst = xrealloc (encode_terminal_dst,
encode_terminal_dst_size);
- else
- encode_terminal_dst = xmalloc (encode_terminal_dst_size);
}
coding->destination = encode_terminal_dst;
coding->dst_bytes = encode_terminal_dst_size;
@@ -1218,15 +1212,10 @@ calculate_costs (struct frame *frame)
max_frame_lines = max (max_frame_lines, FRAME_LINES (frame));
max_frame_cols = max (max_frame_cols, FRAME_COLS (frame));
- if (char_ins_del_vector != 0)
char_ins_del_vector
= (int *) xrealloc (char_ins_del_vector,
(sizeof (int)
+ 2 * max_frame_cols * sizeof (int)));
- else
- char_ins_del_vector
- = (int *) xmalloc (sizeof (int)
- + 2 * max_frame_cols * sizeof (int));
bzero (char_ins_del_vector, (sizeof (int)
+ 2 * max_frame_cols * sizeof (int)));
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2008-12-08 18:23 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <E1L9hLb-000768-Bm@cvs.savannah.gnu.org>
2008-12-08 18:23 ` [Emacs-diffs] emacs/src term.c Emanuele Giaquinta
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.