aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShav Kinderlehrer <[email protected]>2023-05-18 08:51:12 -0400
committerShav Kinderlehrer <[email protected]>2023-05-18 08:51:12 -0400
commitfa8e81e288803207bc4f4501e0e4b1a4a96e9a5f (patch)
tree20b96fdbe7f3ee5da162b4735cf784fefc3eb76b
parentef68f9c37818bd685cf363f67f5c08feb5e21ab0 (diff)
downloadlat-fa8e81e288803207bc4f4501e0e4b1a4a96e9a5f.tar.gz
lat-fa8e81e288803207bc4f4501e0e4b1a4a96e9a5f.zip
Prep for new extension system
-rw-r--r--include/exec.h6
-rw-r--r--include/extension.h8
-rw-r--r--include/server.h4
-rw-r--r--src/extension/filter.c5
-rw-r--r--src/lib/exec.c14
-rw-r--r--src/main.c9
6 files changed, 22 insertions, 24 deletions
diff --git a/include/exec.h b/include/exec.h
deleted file mode 100644
index a761c3e..0000000
--- a/include/exec.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#ifndef EXEC_H
-#define exec_h
-#include "types.h"
-
-struct line runextension(struct line *data, char *filename, size_t n);
-#endif
diff --git a/include/extension.h b/include/extension.h
new file mode 100644
index 0000000..dc7b09f
--- /dev/null
+++ b/include/extension.h
@@ -0,0 +1,8 @@
+#ifndef EXTENSION_H
+#define EXTENSION_H
+
+#include "types.h"
+
+struct filedata runfilter(struct filedata *f);
+
+#endif // EXTENSION_H
diff --git a/include/server.h b/include/server.h
new file mode 100644
index 0000000..a645cf8
--- /dev/null
+++ b/include/server.h
@@ -0,0 +1,4 @@
+#ifndef SERVER_H
+#define SERVER_H
+
+#endif // SERVER_H
diff --git a/src/extension/filter.c b/src/extension/filter.c
new file mode 100644
index 0000000..2e8f7f7
--- /dev/null
+++ b/src/extension/filter.c
@@ -0,0 +1,5 @@
+#include "extension.h"
+#include "types.h"
+#include "util.h"
+
+struct filedata runfilter(struct filedata *f) { return *f; }
diff --git a/src/lib/exec.c b/src/lib/exec.c
deleted file mode 100644
index 4fa98df..0000000
--- a/src/lib/exec.c
+++ /dev/null
@@ -1,14 +0,0 @@
-#include <signal.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-
-#include "arg.h"
-#include "types.h"
-#include "util.h"
-
-struct line runextension(struct line *data, char *filename, size_t n) {
- // TODO: Implement as unix socket
- return *data;
-}
diff --git a/src/main.c b/src/main.c
index 19f4a9c..bad425c 100644
--- a/src/main.c
+++ b/src/main.c
@@ -3,7 +3,7 @@
#include <unistd.h>
#include "arg.h"
-#include "exec.h"
+#include "extension.h"
#include "file.h"
#include "process.h"
#include "types.h"
@@ -53,6 +53,10 @@ void run(FILE *fp, char *filename, bool tty) {
struct filedata f;
f = readfile(fp, conf.isstdin);
+ if (conf.extension != NULL) {
+ f = runfilter(&f);
+ }
+
if (conf.pager) {
st = popen("less", "w");
err = st;
@@ -91,9 +95,6 @@ void run(FILE *fp, char *filename, bool tty) {
free(padding);
}
- if (conf.extension != NULL) {
- f.lines[i] = runextension(&f.lines[i], filename, i + 1);
- }
fwrite(f.lines[i].buf, 1, f.lines[i].len, st);
fprintf(st, "\n");
linecount++;