*** empty log message ***
authorroot <root>
Wed, 31 Mar 2010 23:01:51 +0000 (23:01 +0000)
committerroot <root>
Wed, 31 Mar 2010 23:01:51 +0000 (23:01 +0000)
src/rxvt.h
src/rxvtfont.C
src/rxvtfont.h

index 3e1d4cc..b9c4260 100644 (file)
@@ -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)
index efc9069..457d9d4 100644 (file)
@@ -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);
index 8631ea2..46896b3 100644 (file)
@@ -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 ();