aboutsummaryrefslogtreecommitdiffstats
path: root/src/macros.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/macros.c')
-rw-r--r--src/macros.c15
1 files changed, 5 insertions, 10 deletions
diff --git a/src/macros.c b/src/macros.c
index d963838069b..7c6ab2efc30 100644
--- a/src/macros.c
+++ b/src/macros.c
@@ -184,16 +184,11 @@ store_kbd_macro_char (Lisp_Object c)
184 { 184 {
185 if (kb->kbd_macro_ptr - kb->kbd_macro_buffer == kb->kbd_macro_bufsize) 185 if (kb->kbd_macro_ptr - kb->kbd_macro_buffer == kb->kbd_macro_bufsize)
186 { 186 {
187 ptrdiff_t ptr_offset, end_offset, nbytes; 187 ptrdiff_t ptr_offset = kb->kbd_macro_ptr - kb->kbd_macro_buffer;
188 188 ptrdiff_t end_offset = kb->kbd_macro_end - kb->kbd_macro_buffer;
189 ptr_offset = kb->kbd_macro_ptr - kb->kbd_macro_buffer; 189 kb->kbd_macro_buffer = xpalloc (kb->kbd_macro_buffer,
190 end_offset = kb->kbd_macro_end - kb->kbd_macro_buffer; 190 &kb->kbd_macro_bufsize,
191 if (min (PTRDIFF_MAX, SIZE_MAX) / sizeof *kb->kbd_macro_buffer / 2 191 1, -1, sizeof *kb->kbd_macro_buffer);
192 < kb->kbd_macro_bufsize)
193 memory_full (SIZE_MAX);
194 nbytes = kb->kbd_macro_bufsize * (2 * sizeof *kb->kbd_macro_buffer);
195 kb->kbd_macro_buffer = xrealloc (kb->kbd_macro_buffer, nbytes);
196 kb->kbd_macro_bufsize *= 2;
197 kb->kbd_macro_ptr = kb->kbd_macro_buffer + ptr_offset; 192 kb->kbd_macro_ptr = kb->kbd_macro_buffer + ptr_offset;
198 kb->kbd_macro_end = kb->kbd_macro_buffer + end_offset; 193 kb->kbd_macro_end = kb->kbd_macro_buffer + end_offset;
199 } 194 }