diff --git a/ChangeLog b/ChangeLog index 8fba2d56..58c0018e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2015-06-14 Benno Schulenberg + * src/winio.c (edit_draw): Add some debugging code to track which + multidata codes (for multiline regexes) get assigned to which lines. + 2015-06-11 Benno Schulenberg * src/winio.c (get_key_buffer): Add some debugging code to make it easy to see what codes a key stroke produces. diff --git a/src/winio.c b/src/winio.c index 2e56bbf7..053b226b 100644 --- a/src/winio.c +++ b/src/winio.c @@ -2654,11 +2654,17 @@ void edit_draw(filestruct *fileptr, const char *converted, int if (end_line != fileptr) { paintlen = -1; fileptr->multidata[tmpcolor->id] = CWHOLELINE; +#ifdef DEBUG + fprintf(stderr, " Marking for id %i line %i as CWHOLELINE\n", tmpcolor->id, line); +#endif } else { paintlen = actual_x(converted, strnlenpt(fileptr->data, endmatch.rm_eo) - start); fileptr->multidata[tmpcolor->id] = CBEGINBEFORE; +#ifdef DEBUG + fprintf(stderr, " Marking for id %i line %i as CBEGINBEFORE\n", tmpcolor->id, line); +#endif } mvwaddnstr(edit, line, 0, converted, paintlen); step_two: @@ -2705,9 +2711,12 @@ void edit_draw(filestruct *fileptr, const char *converted, int mvwaddnstr(edit, line, x_start, converted + index, paintlen); - if (paintlen > 0) + if (paintlen > 0) { fileptr->multidata[tmpcolor->id] = CSTARTENDHERE; - +#ifdef DEBUG + fprintf(stderr, " Marking for id %i line %i as CSTARTENDHERE\n", tmpcolor->id, line); +#endif + } } } else { /* There is no end on this line. But we @@ -2728,6 +2737,9 @@ void edit_draw(filestruct *fileptr, const char *converted, int /* We painted to the end of the line, so * don't bother checking any more * starts. */ +#ifdef DEBUG + fprintf(stderr, " Marking for id %i line %i as CENDAFTER\n", tmpcolor->id, line); +#endif fileptr->multidata[tmpcolor->id] = CENDAFTER; break; }