aboutsummaryrefslogtreecommitdiffstats
path: root/src/w32xfns.c
diff options
context:
space:
mode:
authorAndrew Innes <[email protected]>2000-12-21 14:58:09 +0000
committerAndrew Innes <[email protected]>2000-12-21 14:58:09 +0000
commit90f4a9f8e2a4424d1ff19208aa088cfdf6fa4df9 (patch)
tree856a6cb87c6d7873fe84ae610f47ca3728076cde /src/w32xfns.c
parent834d23b2c4495d76d711f0a7e628f17e4781758d (diff)
(select_palette): Avoid calling SelectPalette if
palette is NULL, since this corrupts memory! Also get display_info reference from frame.
Diffstat (limited to 'src/w32xfns.c')
-rw-r--r--src/w32xfns.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/w32xfns.c b/src/w32xfns.c
index 018aefdf35..9117f7e91a 100644
--- a/src/w32xfns.c
+++ b/src/w32xfns.c
@@ -84,9 +84,17 @@ signal_quit ()
void
select_palette (FRAME_PTR f, HDC hdc)
{
+ struct w32_display_info *display_info = FRAME_W32_DISPLAY_INFO (f);
+
+ if (!display_info->has_palette)
+ return;
+
+ if (display_info->palette == 0)
+ abort ();
+
if (!NILP (Vw32_enable_palette))
f->output_data.w32->old_palette =
- SelectPalette (hdc, one_w32_display_info.palette, FALSE);
+ SelectPalette (hdc, display_info->palette, FALSE);
else
f->output_data.w32->old_palette = NULL;