Commit 535cc8e9 authored by Dmitry Antipov's avatar Dmitry Antipov

Fix recently introduced crash on MS-Windows (Bug#12839).

* w32term.h (struct scroll_bar): Use convenient header.
(SCROLL_BAR_VEC_SIZE): Remove.
* w32term.c (x_scroll_bar_create): Use VECSIZE.
parent 7d377c48
2012-11-09 Dmitry Antipov <dmantipov@yandex.ru>
Fix recently introduced crash on MS-Windows (Bug#12839).
* w32term.h (struct scroll_bar): Use convenient header.
(SCROLL_BAR_VEC_SIZE): Remove.
* w32term.c (x_scroll_bar_create): Use VECSIZE.
2012-11-09 Dmitry Antipov <dmantipov@yandex.ru>
Tweak last vectorlike_header change.
......
......@@ -3626,7 +3626,7 @@ x_scroll_bar_create (struct window *w, int top, int left, int width, int height)
HWND hwnd;
SCROLLINFO si;
struct scroll_bar *bar
= XSCROLL_BAR (Fmake_vector (make_number (SCROLL_BAR_VEC_SIZE), Qnil));
= XSCROLL_BAR (Fmake_vector (make_number (VECSIZE (struct scroll_bar)), Qnil));
Lisp_Object barobj;
block_input ();
......
......@@ -415,9 +415,8 @@ extern struct w32_output w32term_display;
struct scroll_bar {
/* These fields are shared by all vectors. */
EMACS_INT size_from_Lisp_Vector_struct;
struct Lisp_Vector *next_from_Lisp_Vector_struct;
/* This field is shared by all vectors. */
struct vectorlike_header header;
/* The window we're a scroll bar for. */
Lisp_Object window;
......@@ -460,12 +459,6 @@ struct scroll_bar {
Lisp_Object fringe_extended_p;
};
/* The number of elements a vector holding a struct scroll_bar needs. */
#define SCROLL_BAR_VEC_SIZE \
((sizeof (struct scroll_bar) \
- sizeof (EMACS_INT) - sizeof (struct Lisp_Vector *)) \
/ word_size)
/* Turning a lisp vector value into a pointer to a struct scroll_bar. */
#define XSCROLL_BAR(vec) ((struct scroll_bar *) XVECTOR (vec))
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment