Commit 355a07bb authored by Benno Schulenberg's avatar Benno Schulenberg
Browse files

tweaks: don't optimize for the wrong case

Running strlenpt() on a string that takes up more than 80 columns
(the width of an average terminal) takes /more/ time than simply
converting an extra character (the one that will be overwritten
by the "$" at the edge of the terminal).  So... just convert one
more character than necessary when the line is overlong.  In the
most common case, however, the line will fit fully onscreen, and
we save a whole call of strlenpt().
No related merge requests found
Showing with 0 additions and 7 deletions
+0 -7
......@@ -1810,13 +1810,6 @@ char *display_string(const char *buf, size_t start_col, size_t span,
size_t beyond = start_col + span;
/* The column number just beyond the last shown character. */
/* If this is data, make room for the "$" at the end of the line. */
if (isdata && !ISSET(SOFTWRAP) && strlenpt(buf) > beyond)
span--;
if (span == 0)
return mallocstrcpy(NULL, "");
start_index = actual_x(buf, start_col);
column = strnlenpt(buf, start_index);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment