/[LeafOK_CVS]/lbbs/src/lml.c
ViewVC logotype

Diff of /lbbs/src/lml.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 1.48 by sysadm, Mon Nov 17 12:47:41 2025 UTC Revision 1.49 by sysadm, Sat Nov 22 10:35:51 2025 UTC
# Line 180  inline static void lml_init(void) Line 180  inline static void lml_init(void)
180  }  }
181    
182  #define CHECK_AND_APPEND_OUTPUT(out_buf, out_buf_len, out_buf_offset, tag_out, tag_out_len, line_width)                             \  #define CHECK_AND_APPEND_OUTPUT(out_buf, out_buf_len, out_buf_offset, tag_out, tag_out_len, line_width)                             \
183            if ((tag_out_len) > 0)                                                                                                          \
184          {                                                                                                                               \          {                                                                                                                               \
185                  if ((out_buf_offset) + (tag_out_len) >= (out_buf_len))                                                                      \                  if ((out_buf_offset) + (tag_out_len) >= (out_buf_len))                                                                      \
186                  {                                                                                                                           \                  {                                                                                                                           \
# Line 191  inline static void lml_init(void) Line 192  inline static void lml_init(void)
192                  *((out_buf) + (out_buf_offset) + (size_t)(tag_out_len)) = '\0';                                                             \                  *((out_buf) + (out_buf_offset) + (size_t)(tag_out_len)) = '\0';                                                             \
193                  (line_width) += str_length((out_buf) + (out_buf_offset), 1);                                                                \                  (line_width) += str_length((out_buf) + (out_buf_offset), 1);                                                                \
194                  (out_buf_offset) += (tag_out_len);                                                                                          \                  (out_buf_offset) += (tag_out_len);                                                                                          \
195                    if ((tag_out)[(tag_out_len) - 1] == '\0')                                                                                   \
196                    {                                                                                                                           \
197                            (out_buf_offset)--;                                                                                                     \
198                            return (out_buf_offset);                                                                                                \
199                    }                                                                                                                           \
200          }          }
201    
202  int lml_render(const char *str_in, char *str_out, int buf_len, int width, int quote_mode)  int lml_render(const char *str_in, char *str_out, int buf_len, int width, int quote_mode)
# Line 216  int lml_render(const char *str_in, char Line 222  int lml_render(const char *str_in, char
222          char tab_spaces[TAB_SIZE + 1];          char tab_spaces[TAB_SIZE + 1];
223          int tab_width = 0;          int tab_width = 0;
224    
225    #ifdef _DEBUG
226            size_t str_in_len = strlen(str_in);
227    #endif
228    
229          clock_begin = clock();          clock_begin = clock();
230    
231          lml_init();          lml_init();
# Line 230  int lml_render(const char *str_in, char Line 240  int lml_render(const char *str_in, char
240    
241          for (i = 0; str_in[i] != '\0'; i++)          for (i = 0; str_in[i] != '\0'; i++)
242          {          {
243    #ifdef _DEBUG
244                    if (i >= str_in_len)
245                    {
246                            log_error("Bug: i(%d) >= str_in_len(%d)\n", i, str_in_len);
247                            break;
248                    }
249    #endif
250    
251                  if (!lml_tag_disabled && new_line)                  if (!lml_tag_disabled && new_line)
252                  {                  {
253                          while (str_in[i] == ':' && str_in[i + 1] == ' ') // FB2000 quote leading str                          while (str_in[i] == ':' && str_in[i + 1] == ' ') // FB2000 quote leading str


Legend:
Removed lines/characters  
Changed lines/characters
  Added lines/characters

webmaster@leafok.com
ViewVC Help
Powered by ViewVC 1.3.0-beta1