about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--buffer.c3
-rw-r--r--chat.h1
2 files changed, 4 insertions, 0 deletions
diff --git a/buffer.c b/buffer.c
index 49943ba..47d0955 100644
--- a/buffer.c
+++ b/buffer.c
@@ -102,6 +102,7 @@ static int flow(struct Lines *hard, int cols, const struct Line *soft) {
 	int flowed = 1;
 
 	struct Line *line = linesNext(hard);
+	line->num = soft->num;
 	line->heat = soft->heat;
 	line->time = soft->time;
 	line->str = strdup(soft->str);
@@ -177,6 +178,7 @@ static int flow(struct Lines *hard, int cols, const struct Line *soft) {
 
 		flowed++;
 		line = linesNext(hard);
+		line->num = soft->num;
 		line->heat = soft->heat;
 		line->time = 0;
 
@@ -203,6 +205,7 @@ int bufferPush(
 	enum Heat heat, time_t time, const char *str
 ) {
 	struct Line *soft = linesNext(&buffer->soft);
+	soft->num = buffer->soft.len;
 	soft->heat = heat;
 	soft->time = time;
 	soft->str = strdup(str);
diff --git a/chat.h b/chat.h
index 4c9b32b..6ecd91a 100644
--- a/chat.h
+++ b/chat.h
@@ -301,6 +301,7 @@ int uiSave(const char *name);
 enum { BufferCap = 1024 };
 struct Buffer;
 struct Line {
+	uint num;
 	enum Heat heat;
 	time_t time;
 	char *str;