@@ -1687,9 +1687,7 @@ int rtf_reader::cmd_fs(SIMPLE_TREE_NODE *pword, int align,
16871687 if (!have_param)
16881688 return CMD_RESULT_CONTINUE;
16891689 num /= 2 ;
1690- if (!astk_pushx (ATTR_FONTSIZE, num))
1691- return CMD_RESULT_ERROR;
1692- return CMD_RESULT_CONTINUE;
1690+ return astk_pushx (ATTR_FONTSIZE, num) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
16931691}
16941692
16951693int rtf_reader::cmd_field (SIMPLE_TREE_NODE *pword,
@@ -1771,9 +1769,7 @@ int rtf_reader::cmd_f(SIMPLE_TREE_NODE *pword, int align,
17711769 auto pentry = lookup_font (num);
17721770 if (pentry == nullptr || strcasestr (pentry->name , " symbol" ) != nullptr )
17731771 return CMD_RESULT_CONTINUE;
1774- if (!astk_pushx (ATTR_FONTFACE, num))
1775- return CMD_RESULT_ERROR;
1776- return CMD_RESULT_CONTINUE;
1772+ return astk_pushx (ATTR_FONTFACE, num) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
17771773}
17781774
17791775int rtf_reader::cmd_deff (SIMPLE_TREE_NODE *pword,
@@ -1823,65 +1819,49 @@ int rtf_reader::cmd_tab(SIMPLE_TREE_NODE *pword, int align,
18231819int rtf_reader::cmd_plain (SIMPLE_TREE_NODE *pword,
18241820 int align, bool have_param, int num)
18251821{
1826- if (!astk_popx_all ())
1827- return CMD_RESULT_ERROR;
1828- return CMD_RESULT_CONTINUE;
1822+ return astk_popx_all () ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
18291823}
18301824
18311825int rtf_reader::cmd_fnil (SIMPLE_TREE_NODE *pword,
18321826 int align, bool have_param, int num)
18331827{
1834- if (!astk_pushx (ATTR_FONTFACE, -1 ))
1835- return CMD_RESULT_ERROR;
1836- return CMD_RESULT_CONTINUE;
1828+ return astk_pushx (ATTR_FONTFACE, -1 ) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
18371829}
18381830
18391831int rtf_reader::cmd_froman (SIMPLE_TREE_NODE *pword,
18401832 int align, bool have_param, int num)
18411833{
1842- if (!astk_pushx (ATTR_FONTFACE, -2 ))
1843- return CMD_RESULT_ERROR;
1844- return CMD_RESULT_CONTINUE;
1834+ return astk_pushx (ATTR_FONTFACE, -2 ) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
18451835}
18461836
18471837int rtf_reader::cmd_fswiss (SIMPLE_TREE_NODE *pword,
18481838 int align, bool have_param, int num)
18491839{
1850- if (!astk_pushx (ATTR_FONTFACE, -3 ))
1851- return CMD_RESULT_ERROR;
1852- return CMD_RESULT_CONTINUE;
1840+ return astk_pushx (ATTR_FONTFACE, -3 ) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
18531841}
18541842
18551843int rtf_reader::cmd_fmodern (SIMPLE_TREE_NODE *pword,
18561844 int align, bool have_param, int num)
18571845{
1858- if (!astk_pushx (ATTR_FONTFACE, -4 ))
1859- return CMD_RESULT_ERROR;
1860- return CMD_RESULT_CONTINUE;
1846+ return astk_pushx (ATTR_FONTFACE, -4 ) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
18611847}
18621848
18631849int rtf_reader::cmd_fscript (SIMPLE_TREE_NODE *pword,
18641850 int align, bool have_param, int num)
18651851{
1866- if (!astk_pushx (ATTR_FONTFACE, -5 ))
1867- return CMD_RESULT_ERROR;
1868- return CMD_RESULT_CONTINUE;
1852+ return astk_pushx (ATTR_FONTFACE, -5 ) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
18691853}
18701854
18711855int rtf_reader::cmd_fdecor (SIMPLE_TREE_NODE *pword,
18721856 int align, bool have_param, int num)
18731857{
1874- if (!astk_pushx (ATTR_FONTFACE, -6 ))
1875- return CMD_RESULT_ERROR;
1876- return CMD_RESULT_CONTINUE;
1858+ return astk_pushx (ATTR_FONTFACE, -6 ) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
18771859}
18781860
18791861int rtf_reader::cmd_ftech (SIMPLE_TREE_NODE *pword,
18801862 int align, bool have_param, int num)
18811863{
1882- if (!astk_pushx (ATTR_FONTFACE, -7 ))
1883- return CMD_RESULT_ERROR;
1884- return CMD_RESULT_CONTINUE;
1864+ return astk_pushx (ATTR_FONTFACE, -7 ) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
18851865}
18861866
18871867int rtf_reader::cmd_expand (SIMPLE_TREE_NODE *pword,
@@ -2055,9 +2035,8 @@ int rtf_reader::cmd_par(SIMPLE_TREE_NODE *pword, int align,
20552035{
20562036 auto preader = this ;
20572037 if (preader->have_fromhtml ) {
2058- if (preader->ext_push .p_bytes (" \r\n " , 2 ) != EXT_ERR_SUCCESS)
2059- return CMD_RESULT_ERROR;
2060- return CMD_RESULT_CONTINUE;
2038+ return preader->ext_push .p_bytes (" \r\n " , 2 ) == pack_result::ok ?
2039+ CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
20612040 }
20622041 if (preader->ext_push .p_bytes (TAG_LINE_BREAK,
20632042 sizeof (TAG_LINE_BREAK) - 1 ) != EXT_ERR_SUCCESS)
@@ -2093,9 +2072,7 @@ int rtf_reader::cmd_intbl(SIMPLE_TREE_NODE *pword,
20932072{
20942073 auto preader = this ;
20952074 preader->coming_pars_tabular ++;
2096- if (check_for_table ())
2097- return CMD_RESULT_CONTINUE;
2098- return CMD_RESULT_ERROR;
2075+ return check_for_table () ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
20992076}
21002077
21012078int rtf_reader::cmd_ulnone (SIMPLE_TREE_NODE *pword,
@@ -2122,89 +2099,67 @@ int rtf_reader::cmd_ul(SIMPLE_TREE_NODE *pword, int align,
21222099{
21232100 if (b_param && num == 0 )
21242101 return cmd_ulnone (pword, align, b_param, num);
2125- if (!astk_pushx (ATTR_UNDERLINE, 0 ))
2126- return CMD_RESULT_ERROR;
2127- return CMD_RESULT_CONTINUE;
2102+ return astk_pushx (ATTR_UNDERLINE, 0 ) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
21282103}
21292104
21302105int rtf_reader::cmd_uld (SIMPLE_TREE_NODE *pword, int align,
21312106 bool b_param, int num)
21322107{
2133- if (!astk_pushx (ATTR_DOUBLE_UL, 0 ))
2134- return CMD_RESULT_ERROR;
2135- return CMD_RESULT_CONTINUE;
2108+ return astk_pushx (ATTR_DOUBLE_UL, 0 ) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
21362109}
21372110
21382111int rtf_reader::cmd_uldb (SIMPLE_TREE_NODE *pword,
21392112 int align, bool have_param, int num)
21402113{
2141- if (!astk_pushx (ATTR_DOT_UL, 0 ))
2142- return CMD_RESULT_ERROR;
2143- return CMD_RESULT_CONTINUE;
2114+ return astk_pushx (ATTR_DOT_UL, 0 ) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
21442115}
21452116
21462117int rtf_reader::cmd_uldash (SIMPLE_TREE_NODE *pword,
21472118 int align, bool have_param, int num)
21482119{
2149- if (!astk_pushx (ATTR_DASH_UL, 0 ))
2150- return CMD_RESULT_ERROR;
2151- return CMD_RESULT_CONTINUE;
2120+ return astk_pushx (ATTR_DASH_UL, 0 ) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
21522121}
21532122
21542123int rtf_reader::cmd_uldashd (SIMPLE_TREE_NODE *pword,
21552124 int align, bool have_param, int num)
21562125{
2157- if (!astk_pushx (ATTR_DOT_DASH_UL, 0 ))
2158- return CMD_RESULT_ERROR;
2159- return CMD_RESULT_CONTINUE;
2126+ return astk_pushx (ATTR_DOT_DASH_UL, 0 ) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
21602127}
21612128
21622129int rtf_reader::cmd_uldashdd (SIMPLE_TREE_NODE *pword,
21632130 int align, bool have_param, int num)
21642131{
2165- if (!astk_pushx (ATTR_2DOT_DASH_UL, 0 ))
2166- return CMD_RESULT_ERROR;
2167- return CMD_RESULT_CONTINUE;
2132+ return astk_pushx (ATTR_2DOT_DASH_UL, 0 ) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
21682133}
21692134
21702135int rtf_reader::cmd_ulw (SIMPLE_TREE_NODE *pword, int align,
21712136 bool have_param, int num)
21722137{
2173- if (!astk_pushx (ATTR_WORD_UL, 0 ))
2174- return CMD_RESULT_ERROR;
2175- return CMD_RESULT_CONTINUE;
2138+ return astk_pushx (ATTR_WORD_UL, 0 ) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
21762139}
21772140
21782141int rtf_reader::cmd_ulth (SIMPLE_TREE_NODE *pword,
21792142 int align, bool have_param, int num)
21802143{
2181- if (!astk_pushx (ATTR_THICK_UL, 0 ))
2182- return CMD_RESULT_ERROR;
2183- return CMD_RESULT_CONTINUE;
2144+ return astk_pushx (ATTR_THICK_UL, 0 ) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
21842145}
21852146
21862147int rtf_reader::cmd_ulthd (SIMPLE_TREE_NODE *pword,
21872148 int align, bool have_param, int num)
21882149{
2189- if (!astk_pushx (ATTR_THICK_UL, 0 ))
2190- return CMD_RESULT_ERROR;
2191- return CMD_RESULT_CONTINUE;
2150+ return astk_pushx (ATTR_THICK_UL, 0 ) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
21922151}
21932152
21942153int rtf_reader::cmd_ulthdash (SIMPLE_TREE_NODE *pword,
21952154 int align, bool have_param, int num)
21962155{
2197- if (!astk_pushx (ATTR_THICK_UL, 0 ))
2198- return CMD_RESULT_ERROR;
2199- return CMD_RESULT_CONTINUE;
2156+ return astk_pushx (ATTR_THICK_UL, 0 ) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
22002157}
22012158
22022159int rtf_reader::cmd_ulwave (SIMPLE_TREE_NODE *pword,
22032160 int align, bool have_param, int num)
22042161{
2205- if (!astk_pushx (ATTR_WAVE_UL, 0 ))
2206- return CMD_RESULT_ERROR;
2207- return CMD_RESULT_CONTINUE;
2162+ return astk_pushx (ATTR_WAVE_UL, 0 ) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
22082163}
22092164
22102165int rtf_reader::cmd_strike (SIMPLE_TREE_NODE *pword,
@@ -2276,9 +2231,7 @@ int rtf_reader::cmd_u(SIMPLE_TREE_NODE *pword, int align,
22762231int rtf_reader::cmd_uc (SIMPLE_TREE_NODE *pword, int align,
22772232 bool have_param, int num)
22782233{
2279- if (!astk_pushx (ATTR_UBYTES, num))
2280- return CMD_RESULT_ERROR;
2281- return CMD_RESULT_CONTINUE;
2234+ return astk_pushx (ATTR_UBYTES, num) ? CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
22822235}
22832236
22842237int rtf_reader::cmd_dn (SIMPLE_TREE_NODE *pword, int align,
@@ -2297,9 +2250,8 @@ int rtf_reader::cmd_dn(SIMPLE_TREE_NODE *pword, int align,
22972250int rtf_reader::cmd_nosupersub (SIMPLE_TREE_NODE *pword,
22982251 int align, bool have_param, int num)
22992252{
2300- if (!astk_popx (ATTR_SUPER) || !astk_popx (ATTR_SUB))
2301- return CMD_RESULT_ERROR;
2302- return CMD_RESULT_CONTINUE;
2253+ return astk_popx (ATTR_SUPER) && astk_popx (ATTR_SUB) ?
2254+ CMD_RESULT_CONTINUE : CMD_RESULT_ERROR;
23032255}
23042256
23052257int rtf_reader::cmd_super (SIMPLE_TREE_NODE *pword,
@@ -2544,35 +2496,13 @@ int rtf_reader::cmd_wmetafile(SIMPLE_TREE_NODE *pword,
25442496 if (!preader->is_within_picture || !have_param)
25452497 return CMD_RESULT_CONTINUE;
25462498 preader->picture_wmf_type = num;
2547- switch (num) {
2548- case 1 :
2549- preader->picture_wmf_str = " MM_TEXT" ;
2550- break ;
2551- case 2 :
2552- preader->picture_wmf_str = " MM_LOMETRIC" ;
2553- break ;
2554- case 3 :
2555- preader->picture_wmf_str = " MM_HIMETRIC" ;
2556- break ;
2557- case 4 :
2558- preader->picture_wmf_str = " MM_LOENGLISH" ;
2559- break ;
2560- case 5 :
2561- preader->picture_wmf_str = " MM_HIENGLISH" ;
2562- break ;
2563- case 6 :
2564- preader->picture_wmf_str = " MM_TWIPS" ;
2565- break ;
2566- case 7 :
2567- preader->picture_wmf_str = " MM_ISOTROPIC" ;
2568- break ;
2569- case 8 :
2570- preader->picture_wmf_str = " MM_ANISOTROPIC" ;
2571- break ;
2572- default :
2573- preader->picture_wmf_str = " default:MM_TEXT" ;
2574- break ;
2575- }
2499+ static const char *pws[] = {
2500+ " default:MM_TEXT" , " MM_TEXT" , " MM_LOMETRIC" , " MM_HIMETRIC" ,
2501+ " MM_LOENGLISH" , " MM_HIENGLISH" , " MM_TWIPS" , " MM_ISOTROPIC" ,
2502+ " MM_ANISOTROPIC"
2503+ };
2504+ preader->picture_wmf_str = num >= 0 && static_cast <size_t >(num) < std::size (pws) ?
2505+ pws[num] : pws[0 ];
25762506 return CMD_RESULT_CONTINUE;
25772507}
25782508
0 commit comments