| | 164 | | | | | | static LINE_CACHE_REC * | | | 165 | | | | | | view_update_line_cache(TEXT_BUFFER_VIEW_REC *view, LINE_REC *line) | | | 166 | | | | | | { | | | 167 | | | | | | INDENT_FUNC indent_func; | | | 168 | | | | | | LINE_CACHE_REC *rec; | | | 169 | | | | | | LINE_CACHE_SUB_REC *sub; | | | 170 | | | | | | GSList *lines; | | | 171 | | | | | | unsigned char cmd; | | | 172 | | | | | | const unsigned char *ptr, *next_ptr, *last_space_ptr; | | | 173 | | | | | | int xpos, pos, indent_pos, last_space, last_color, color, linecount; | | | 174 | | | | | | int char_width; | | | 175 | | | | | | | | true | 176 | | | | | | g_return_val_if_fail(line->text != NULL, NULL);
| | | 177 | | | | | | | | | 178 | | | | | | color = ATTR_RESETFG | ATTR_RESETBG;
| | | 179 | | | | | | xpos = 0; indent_pos = view->default_indent; | | | 180 | | | | | | last_space = last_color = 0; last_space_ptr = NULL; sub = NULL;
| | | 181 | | | | | | | | | 182 | | | | | | indent_func = view->default_indent_func; | | | 183 | | | | | | linecount = 1; | | | 184 | | | | | | lines = NULL;
| | | 185 | | | | | | for (ptr = line->text;;) { | | | 186 | | | | | | if (*ptr == '\0') { | | | | | | | | | ... | | | 283 | | | | | | memcpy(&rec->lines[pos], data, | | | 284 | | | | | | sizeof(LINE_CACHE_SUB_REC)); | | | 285 | | | | | | | | | 286 | | | | | | lines = g_slist_remove(lines, data); | | | 287 | | | | | | g_free(data); | | | 288 | | | | | | } | | | 289 | | | | | | } | | | 290 | | | | | | | | | 291 | | | | | | g_hash_table_insert(view->cache->line_cache, line, rec); | | | 292 | | | | | | return rec; | | view_update_line_cache$return <= 4095 | 293 | | | | | | } | Problem | | view_update_line_cache$return <= 4095 |
|
|