From 1b390066bce4af8d7c937ce1bcc69db461049710 Mon Sep 17 00:00:00 2001 From: Daniel Colascione Date: Mon, 19 Feb 2018 16:24:53 -0800 Subject: [PATCH] Allow for padding in dump_object_start_pseudovector --- src/pdumper.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/pdumper.c b/src/pdumper.c index ec1af3cae56..e5da227d905 100644 --- a/src/pdumper.c +++ b/src/pdumper.c @@ -2546,10 +2546,11 @@ dump_object_start_pseudovector ( { const struct Lisp_Vector *in = (const struct Lisp_Vector *) in_hdr; struct Lisp_Vector *out = (struct Lisp_Vector *) out_hdr; + ptrdiff_t vec_size = vector_nbytes ((struct Lisp_Vector *) in); + eassert (vec_size >= out_size); + eassert (vec_size - out_size <= sizeof (EMACS_INT)); - eassert (vector_nbytes ((struct Lisp_Vector *) in) == out_size); - - dump_object_start (ctx, GCALIGNMENT, out, out_size); + dump_object_start (ctx, GCALIGNMENT, out, (dump_off) vec_size); DUMP_FIELD_COPY (out, in, header); ptrdiff_t size = in->header.size; eassert (size & PSEUDOVECTOR_FLAG); -- 2.39.5