summaryrefslogtreecommitdiff
path: root/src/msdos.c
diff options
context:
space:
mode:
authorDmitry Antipov <dmantipov@yandex.ru>2012-08-21 14:21:04 +0400
committerDmitry Antipov <dmantipov@yandex.ru>2012-08-21 14:21:04 +0400
commit086ca913a8495b1d4f0d7eae58aea75f2f5e44ae (patch)
tree0eb5a3cb36efc4b1f2209dfa74be7d6fd3c1b034 /src/msdos.c
parent0e733db9150ea50dc1a3687a0898d6264c4cabd8 (diff)
downloademacs-086ca913a8495b1d4f0d7eae58aea75f2f5e44ae.tar.gz
emacs-086ca913a8495b1d4f0d7eae58aea75f2f5e44ae.tar.bz2
emacs-086ca913a8495b1d4f0d7eae58aea75f2f5e44ae.zip
Avoid direct writes to contents member of struct Lisp_Vector.
* lisp.h (vcopy): New function to copy data into vector. * dispnew.c (Fframe_or_buffer_changed_p): Use AREF and ASET. * fns.c (Ffillarray): Use ASET. * keyboard.c (timer_check_2): Use AREF and ASET. (append_tool_bar_item, Frecent_keys): Use vcopy. * lread.c (read_vector): Use ASET. * msdos.c (Frecent_doskeys): Use vcopy. * xface.c (Finternal_copy_lisp_face): Use vcopy. (Finternal_merge_in_global_face): Use ASET and vcopy. * xfont.c (xfont_list_pattern): Likewise.
Diffstat (limited to 'src/msdos.c')
-rw-r--r--src/msdos.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/msdos.c b/src/msdos.c
index 30435820d9e..a214456d104 100644
--- a/src/msdos.c
+++ b/src/msdos.c
@@ -2434,10 +2434,10 @@ and then the scan code. */)
else
{
val = Fvector (NUM_RECENT_DOSKEYS, keys);
- memcpy (XVECTOR (val)->contents, keys + recent_doskeys_index,
- (NUM_RECENT_DOSKEYS - recent_doskeys_index) * word_size);
- memcpy (XVECTOR (val)->contents + NUM_RECENT_DOSKEYS - recent_doskeys_index,
- keys, recent_doskeys_index * word_size);
+ vcopy (val, 0, keys + recent_doskeys_index,
+ NUM_RECENT_DOSKEYS - recent_doskeys_index);
+ vcopy (val, NUM_RECENT_DOSKEYS - recent_doskeys_index,
+ keys, recent_doskeys_index);
return val;
}
}