]> granicus.if.org Git - php/commitdiff
Remove useless constants MBFL_CHP_{CTL,DIGIT,UALPHA,LALPHA,MSPECIAL}
authorAlex Dowad <alexinbeijing@gmail.com>
Tue, 21 Jul 2020 14:09:12 +0000 (16:09 +0200)
committerAlex Dowad <alexinbeijing@gmail.com>
Tue, 13 Oct 2020 04:12:37 +0000 (06:12 +0200)
ext/mbstring/libmbfl/filters/mbfilter_qprint.c
ext/mbstring/libmbfl/filters/unicode_prop.h

index d42cdca883ea01e355712daf6907c3b25890ce4a..64097769b78fdcb9f553d172d88cb9940d741c47 100644 (file)
@@ -110,8 +110,7 @@ int mbfl_filt_conv_qprintenc(int c, mbfl_convert_filter *filter)
                }
 
                if (s <= 0 || s >= 0x80 || s == 0x3d            /* not ASCII or '=' */
-                  || ((filter->status & MBFL_QPRINT_STS_MIME_HEADER) != 0 &&
-                      (mbfl_charprop_table[s] & MBFL_CHP_MMHQENC) != 0)) {
+                  || ((filter->status & MBFL_QPRINT_STS_MIME_HEADER) && mime_char_needs_qencode[s])) {
                        /* hex-octet */
                        CK((*filter->output_function)(0x3d, filter->data));             /* '=' */
                        n = (s >> 4) & 0xf;
index 6eaefbc2e391efa1c5b9aa775cebb05dcd913df1..1ecf42c556046bd3be10513cca96cde4f75061c9 100644 (file)
  * Suite 330, Boston, MA  02111-1307  USA
  *
  * The authors of this file: PHP3 Internationalization team
- *
- */
-
-/* character property table */
-#define MBFL_CHP_CTL           0x01
-#define MBFL_CHP_DIGIT         0x02
-#define MBFL_CHP_UALPHA                0x04
-#define MBFL_CHP_LALPHA                0x08
-#define MBFL_CHP_MMHQENC       0x10    /* must Q-encoding in MIME Header encoded-word */
-#define MBFL_CHP_MSPECIAL      0x20    /* RFC822 Special characters */
-
-/*
- * Unicode table
  */
 
-static const unsigned char mbfl_charprop_table[] = {
-/* NUL 0 */    MBFL_CHP_CTL | MBFL_CHP_MMHQENC,
-/* SCH 1 */    MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* SIX 2 */    MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* EIX 3 */    MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* EOT 4 */    MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* ENQ 5 */    MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* ACK 6 */    MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* BEL 7 */    MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* BS  8 */    MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* HI  9 */    MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* LF  10 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* VI  11 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* FF  12 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* CR  13 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* SO  14 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* SI  15 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* SLE 16 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* CSI 17 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* DC2 18 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* DC3 19 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* DC4 20 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* NAK 21 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* SYN 22 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* EIB 23 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* CAN 24 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* EM  25 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* SLB 26 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* ESC 27 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* FS  28 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* GS  29 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* RS  30 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* US  31 */   MBFL_CHP_CTL | MBFL_CHP_MMHQENC ,
-/* SP  32 */   MBFL_CHP_MMHQENC ,
-/* !   33 */   0 ,
-/* "   34 */   MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL ,
-/* #   35 */   MBFL_CHP_MMHQENC ,
-/* $   36 */   MBFL_CHP_MMHQENC ,
-/* %   37 */   MBFL_CHP_MMHQENC ,
-/* &   38 */   MBFL_CHP_MMHQENC ,
-/* '   39 */   MBFL_CHP_MMHQENC ,
-/* (   40 */   MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL ,
-/* )   41 */   MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL ,
-/* *   42 */   0 ,
-/* +   43 */   0 ,
-/* ,   44 */   MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL ,
-/* -   45 */   0 ,
-/* .   46 */   MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL ,
-/* /   47 */   0 ,
-/* 0   48 */   MBFL_CHP_DIGIT | MBFL_CHP_MMHQENC ,
-/* 1   49 */   MBFL_CHP_DIGIT | MBFL_CHP_MMHQENC ,
-/* 2   50 */   MBFL_CHP_DIGIT | MBFL_CHP_MMHQENC ,
-/* 3   51 */   MBFL_CHP_DIGIT | MBFL_CHP_MMHQENC ,
-/* 4   52 */   MBFL_CHP_DIGIT | MBFL_CHP_MMHQENC ,
-/* 5   53 */   MBFL_CHP_DIGIT | MBFL_CHP_MMHQENC ,
-/* 6   54 */   MBFL_CHP_DIGIT | MBFL_CHP_MMHQENC ,
-/* 7   55 */   MBFL_CHP_DIGIT | MBFL_CHP_MMHQENC ,
-/* 8   56 */   MBFL_CHP_DIGIT | MBFL_CHP_MMHQENC ,
-/* 9   57 */   MBFL_CHP_DIGIT | MBFL_CHP_MMHQENC ,
-/* :   58 */   MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL ,
-/* ;   59 */   MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL ,
-/* <   60 */   MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL ,
-/* =   61 */   0 ,
-/* >   62 */   MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL ,
-/* ?   63 */   MBFL_CHP_MMHQENC ,
-/* @   64 */   MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL ,
-/* A   65 */   MBFL_CHP_UALPHA ,
-/* B   66 */   MBFL_CHP_UALPHA ,
-/* C   67 */   MBFL_CHP_UALPHA ,
-/* D   68 */   MBFL_CHP_UALPHA ,
-/* E   69 */   MBFL_CHP_UALPHA ,
-/* F   70 */   MBFL_CHP_UALPHA ,
-/* G   71 */   MBFL_CHP_UALPHA ,
-/* H   72 */   MBFL_CHP_UALPHA ,
-/* I   73 */   MBFL_CHP_UALPHA ,
-/* J   74 */   MBFL_CHP_UALPHA ,
-/* K   75 */   MBFL_CHP_UALPHA ,
-/* L   76 */   MBFL_CHP_UALPHA ,
-/* M   77 */   MBFL_CHP_UALPHA ,
-/* N   78 */   MBFL_CHP_UALPHA ,
-/* O   79 */   MBFL_CHP_UALPHA ,
-/* P   80 */   MBFL_CHP_UALPHA ,
-/* Q   81 */   MBFL_CHP_UALPHA ,
-/* R   82 */   MBFL_CHP_UALPHA ,
-/* S   83 */   MBFL_CHP_UALPHA ,
-/* T   84 */   MBFL_CHP_UALPHA ,
-/* U   85 */   MBFL_CHP_UALPHA ,
-/* V   86 */   MBFL_CHP_UALPHA ,
-/* W   87 */   MBFL_CHP_UALPHA ,
-/* X   88 */   MBFL_CHP_UALPHA ,
-/* Y   89 */   MBFL_CHP_UALPHA ,
-/* Z   90 */   MBFL_CHP_UALPHA ,
-/* [   91 */   MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL ,
-/* \   92 */   MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL ,
-/* ]   93 */   MBFL_CHP_MMHQENC | MBFL_CHP_MSPECIAL ,
-/* ^   94 */   MBFL_CHP_MMHQENC ,
-/* _   95 */   MBFL_CHP_MMHQENC ,
-/* `   96 */   MBFL_CHP_MMHQENC ,
-/* a   97 */   MBFL_CHP_LALPHA ,
-/* b   98 */   MBFL_CHP_LALPHA ,
-/* c   99 */   MBFL_CHP_LALPHA ,
-/* d   100 */  MBFL_CHP_LALPHA ,
-/* e   101 */  MBFL_CHP_LALPHA ,
-/* f   102 */  MBFL_CHP_LALPHA ,
-/* g   103 */  MBFL_CHP_LALPHA ,
-/* h   104 */  MBFL_CHP_LALPHA ,
-/* i   105 */  MBFL_CHP_LALPHA ,
-/* j   106 */  MBFL_CHP_LALPHA ,
-/* k   107 */  MBFL_CHP_LALPHA ,
-/* l   108 */  MBFL_CHP_LALPHA ,
-/* m   109 */  MBFL_CHP_LALPHA ,
-/* n   110 */  MBFL_CHP_LALPHA ,
-/* o   111 */  MBFL_CHP_LALPHA ,
-/* p   112 */  MBFL_CHP_LALPHA ,
-/* q   113 */  MBFL_CHP_LALPHA ,
-/* r   114 */  MBFL_CHP_LALPHA ,
-/* s   115 */  MBFL_CHP_LALPHA ,
-/* t   116 */  MBFL_CHP_LALPHA ,
-/* u   117 */  MBFL_CHP_LALPHA ,
-/* v   118 */  MBFL_CHP_LALPHA ,
-/* w   119 */  MBFL_CHP_LALPHA ,
-/* x   120 */  MBFL_CHP_LALPHA ,
-/* y   121 */  MBFL_CHP_LALPHA ,
-/* z   122 */  MBFL_CHP_LALPHA ,
-/* {   123 */  MBFL_CHP_MMHQENC ,
-/* |   124 */  MBFL_CHP_MMHQENC ,
-/* }   125 */  MBFL_CHP_MMHQENC ,
-/* ~   126 */  MBFL_CHP_MMHQENC ,
-/* DEL 127 */  MBFL_CHP_MMHQENC
+/* Should we use QPrint-encoding in MIME Header encoded-word? */
+static const unsigned char mime_char_needs_qencode[] = {
+/* NUL 0  */  1,
+/* SCH 1  */  1,
+/* SIX 2  */  1,
+/* EIX 3  */  1,
+/* EOT 4  */  1,
+/* ENQ 5  */  1,
+/* ACK 6  */  1,
+/* BEL 7  */  1,
+/* BS  8  */  1,
+/* HI  9  */  1,
+/* LF  10 */  1,
+/* VI  11 */  1,
+/* FF  12 */  1,
+/* CR  13 */  1,
+/* SO  14 */  1,
+/* SI  15 */  1,
+/* SLE 16 */  1,
+/* CSI 17 */  1,
+/* DC2 18 */  1,
+/* DC3 19 */  1,
+/* DC4 20 */  1,
+/* NAK 21 */  1,
+/* SYN 22 */  1,
+/* EIB 23 */  1,
+/* CAN 24 */  1,
+/* EM  25 */  1,
+/* SLB 26 */  1,
+/* ESC 27 */  1,
+/* FS  28 */  1,
+/* GS  29 */  1,
+/* RS  30 */  1,
+/* US  31 */  1,
+/* SP  32 */  1,
+/* !   33 */  0,
+/* "   34 */  1,
+/* #   35 */  1,
+/* $   36 */  1,
+/* %   37 */  1,
+/* &   38 */  1,
+/* '   39 */  1,
+/* (   40 */  1,
+/* )   41 */  1,
+/* *   42 */  0,
+/* +   43 */  0,
+/* ,   44 */  1,
+/* -   45 */  0,
+/* .   46 */  1,
+/* /   47 */  0,
+/* 0   48 */  1,
+/* 1   49 */  1,
+/* 2   50 */  1,
+/* 3   51 */  1,
+/* 4   52 */  1,
+/* 5   53 */  1,
+/* 6   54 */  1,
+/* 7   55 */  1,
+/* 8   56 */  1,
+/* 9   57 */  1,
+/* :   58 */  1,
+/* ;   59 */  1,
+/* <   60 */  1,
+/* =   61 */  0,
+/* >   62 */  1,
+/* ?   63 */  1,
+/* @   64 */  1,
+/* A   65 */  0,
+/* B   66 */  0,
+/* C   67 */  0,
+/* D   68 */  0,
+/* E   69 */  0,
+/* F   70 */  0,
+/* G   71 */  0,
+/* H   72 */  0,
+/* I   73 */  0,
+/* J   74 */  0,
+/* K   75 */  0,
+/* L   76 */  0,
+/* M   77 */  0,
+/* N   78 */  0,
+/* O   79 */  0,
+/* P   80 */  0,
+/* Q   81 */  0,
+/* R   82 */  0,
+/* S   83 */  0,
+/* T   84 */  0,
+/* U   85 */  0,
+/* V   86 */  0,
+/* W   87 */  0,
+/* X   88 */  0,
+/* Y   89 */  0,
+/* Z   90 */  0,
+/* [   91 */  1,
+/* \   92 */  1,
+/* ]   93 */  1,
+/* ^   94 */  1,
+/* _   95 */  1,
+/* `   96 */  1,
+/* a   97 */  0,
+/* b   98 */  0,
+/* c   99 */  0,
+/* d  100 */  0,
+/* e  101 */  0,
+/* f  102 */  0,
+/* g  103 */  0,
+/* h  104 */  0,
+/* i  105 */  0,
+/* j  106 */  0,
+/* k  107 */  0,
+/* l  108 */  0,
+/* m  109 */  0,
+/* n  110 */  0,
+/* o  111 */  0,
+/* p  112 */  0,
+/* q  113 */  0,
+/* r  114 */  0,
+/* s  115 */  0,
+/* t  116 */  0,
+/* u  117 */  0,
+/* v  118 */  0,
+/* w  119 */  0,
+/* x  120 */  0,
+/* y  121 */  0,
+/* z  122 */  0,
+/* {  123 */  1,
+/* |  124 */  1,
+/* }  125 */  1,
+/* ~  126 */  1,
+/* DEL 127 */ 1
 };