summaryrefslogtreecommitdiff
path: root/main
diff options
context:
space:
mode:
Diffstat (limited to 'main')
-rw-r--r--main/strings.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/main/strings.c b/main/strings.c
index 7f2025abe..38b4c946f 100644
--- a/main/strings.c
+++ b/main/strings.c
@@ -371,4 +371,23 @@ equals:
return 0;
}
+char *ast_read_line_from_buffer(char **buffer)
+{
+ char *start = *buffer;
+
+ if (!buffer || !*buffer || *(*buffer) == '\0') {
+ return NULL;
+ }
+
+ while (*(*buffer) && *(*buffer) != '\n' ) {
+ (*buffer)++;
+ }
+
+ *(*buffer) = '\0';
+ if (*(*buffer - 1) == '\r') {
+ *(*buffer - 1) = '\0';
+ }
+ (*buffer)++;
+ return start;
+}