diff options
| author | Karl Heuer | 1995-01-14 02:19:32 +0000 |
|---|---|---|
| committer | Karl Heuer | 1995-01-14 02:19:32 +0000 |
| commit | 7d535c6803cea7ee1582ec439192496fa40e4035 (patch) | |
| tree | 5975342f92c65a2adb5dffedfeb544934cb92eb3 /src/alloc.c | |
| parent | 2a96daeb5deec14ee3f7df2cc8b3649eee6ac0ed (diff) | |
| download | emacs-7d535c6803cea7ee1582ec439192496fa40e4035.tar.gz emacs-7d535c6803cea7ee1582ec439192496fa40e4035.zip | |
(Fpurecopy): Mask size field when copying pseudovector.
Diffstat (limited to 'src/alloc.c')
| -rw-r--r-- | src/alloc.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/alloc.c b/src/alloc.c index 29e0ab46ea0..24acdaafea9 100644 --- a/src/alloc.c +++ b/src/alloc.c | |||
| @@ -1163,6 +1163,8 @@ Does not copy symbols.") | |||
| 1163 | register int i, size; | 1163 | register int i, size; |
| 1164 | 1164 | ||
| 1165 | size = XVECTOR (obj)->size; | 1165 | size = XVECTOR (obj)->size; |
| 1166 | if (size & PSEUDOVECTOR_FLAG) | ||
| 1167 | size &= PSEUDOVECTOR_SIZE_MASK; | ||
| 1166 | vec = XVECTOR (make_pure_vector (size)); | 1168 | vec = XVECTOR (make_pure_vector (size)); |
| 1167 | for (i = 0; i < size; i++) | 1169 | for (i = 0; i < size; i++) |
| 1168 | vec->contents[i] = Fpurecopy (XVECTOR (obj)->contents[i]); | 1170 | vec->contents[i] = Fpurecopy (XVECTOR (obj)->contents[i]); |