From aca64ee60270b4b388f1f78e5a4a391ec9cdc777 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 31 Mar 2010 23:01:51 +0000 Subject: [PATCH] *** empty log message *** --- src/rxvt.h | 14 ++++++-------- src/rxvtfont.C | 3 +++ src/rxvtfont.h | 4 ++-- 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/src/rxvt.h b/src/rxvt.h index 3e1d4cc8..b9c4260f 100644 --- a/src/rxvt.h +++ b/src/rxvt.h @@ -324,16 +324,14 @@ enum { #define RS_redraw 0x02000000UL // 5 custom bits for extensions -#define RS_customCount 32 -#define RS_customMask 0x00f80000UL +#define RS_customCount 16 +#define RS_customMask 0x00780000UL #define RS_customShift 19 -// other flags -#define RS_Careful 0x10000000UL /* be careful when drawing these */ - -#define RS_fontCount rxvt_fontset::fontCount -#define RS_fontMask 0xf0000000UL // plenty(?) of fonts, includes RS_Careful -#define RS_fontShift 28 +// must have space for rxvt_fontset::fontCount * 2 + 2 values +#define RS_fontMask 0xf8000000UL // includes RS_Careful +#define RS_fontShift 27 +#define RS_Careful 0x08000000UL /* be careful when drawing these */ #define RS_styleCount 4 #define RS_styleMask (RS_Bold | RS_Italic) diff --git a/src/rxvtfont.C b/src/rxvtfont.C index efc9069f..457d9d43 100644 --- a/src/rxvtfont.C +++ b/src/rxvtfont.C @@ -1541,6 +1541,9 @@ rxvt_fontset::new_font (const char *name, codeset cs) void rxvt_fontset::push_font (rxvt_font *font) { + // the fontCount index is reserved for the overflow font, it is only + // necessary when we get fontCount or more fonts, as they cannot be + // represented in the rendition. if (fonts.size () == fontCount) { rxvt_font *f = new rxvt_font_overflow (this); diff --git a/src/rxvtfont.h b/src/rxvtfont.h index 8631ea24..46896b3f 100644 --- a/src/rxvtfont.h +++ b/src/rxvtfont.h @@ -68,8 +68,8 @@ struct rxvt_fontset { char *fontdesc; - enum { fontCount = 3 }; // must be power-of-two - 1, also has to match RS_fontMask in rxvt.h - enum { firstFont = 2 }; // index of first font in set + enum { fontCount = 15 }; // must be power-of-two - 1, also has to match RS_fontMask in rxvt.h + enum { firstFont = 2 }; // index of first font in set rxvt_fontset (rxvt_term *term); ~rxvt_fontset (); -- 2.34.1