Add numbers to buffer lines
This directly correlates hard-wrapped lines with the soft lines they were wrapped from. Choosing uint here because it doesn't change the size of struct Line. It doesn't at all matter since buffers only hold 1024 lines at a time anyway.
This commit is contained in:
parent
a18ced53df
commit
52c58128c8
3
buffer.c
3
buffer.c
@ -102,6 +102,7 @@ static int flow(struct Lines *hard, int cols, const struct Line *soft) {
|
|||||||
int flowed = 1;
|
int flowed = 1;
|
||||||
|
|
||||||
struct Line *line = linesNext(hard);
|
struct Line *line = linesNext(hard);
|
||||||
|
line->num = soft->num;
|
||||||
line->heat = soft->heat;
|
line->heat = soft->heat;
|
||||||
line->time = soft->time;
|
line->time = soft->time;
|
||||||
line->str = strdup(soft->str);
|
line->str = strdup(soft->str);
|
||||||
@ -177,6 +178,7 @@ static int flow(struct Lines *hard, int cols, const struct Line *soft) {
|
|||||||
|
|
||||||
flowed++;
|
flowed++;
|
||||||
line = linesNext(hard);
|
line = linesNext(hard);
|
||||||
|
line->num = soft->num;
|
||||||
line->heat = soft->heat;
|
line->heat = soft->heat;
|
||||||
line->time = 0;
|
line->time = 0;
|
||||||
|
|
||||||
@ -203,6 +205,7 @@ int bufferPush(
|
|||||||
enum Heat heat, time_t time, const char *str
|
enum Heat heat, time_t time, const char *str
|
||||||
) {
|
) {
|
||||||
struct Line *soft = linesNext(&buffer->soft);
|
struct Line *soft = linesNext(&buffer->soft);
|
||||||
|
soft->num = buffer->soft.len;
|
||||||
soft->heat = heat;
|
soft->heat = heat;
|
||||||
soft->time = time;
|
soft->time = time;
|
||||||
soft->str = strdup(str);
|
soft->str = strdup(str);
|
||||||
|
1
chat.h
1
chat.h
@ -301,6 +301,7 @@ int uiSave(const char *name);
|
|||||||
enum { BufferCap = 1024 };
|
enum { BufferCap = 1024 };
|
||||||
struct Buffer;
|
struct Buffer;
|
||||||
struct Line {
|
struct Line {
|
||||||
|
uint num;
|
||||||
enum Heat heat;
|
enum Heat heat;
|
||||||
time_t time;
|
time_t time;
|
||||||
char *str;
|
char *str;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user