summaryrefslogtreecommitdiff
path: root/lib/compat
diff options
context:
space:
mode:
authorDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>2020-09-25 21:06:59 +0200
committerDavid Oberhollenzer <david.oberhollenzer@sigma-star.at>2020-09-29 18:19:53 +0200
commit4b4cee0c0c99f531a45157fd27f5441e511db109 (patch)
tree825aae023f27c2f578536af35dfd01b1dc96e18e /lib/compat
parentd87bffd89b9c0a26a65f0c629250fa87902b6cb8 (diff)
Replace file/getline usage with istream
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Diffstat (limited to 'lib/compat')
-rw-r--r--lib/compat/Makemodule.am2
-rw-r--r--lib/compat/getline.c60
2 files changed, 1 insertions, 61 deletions
diff --git a/lib/compat/Makemodule.am b/lib/compat/Makemodule.am
index c1be522..4f4fc9c 100644
--- a/lib/compat/Makemodule.am
+++ b/lib/compat/Makemodule.am
@@ -1,4 +1,4 @@
-libcompat_a_SOURCES = lib/compat/getline.c lib/compat/getsubopt.c
+libcompat_a_SOURCES = lib/compat/getsubopt.c
libcompat_a_SOURCES += lib/compat/strndup.c lib/compat/mockups.c
libcompat_a_SOURCES += lib/compat/chdir.c include/compat.h
libcompat_a_SOURCES += lib/compat/path_to_windows.c
diff --git a/lib/compat/getline.c b/lib/compat/getline.c
deleted file mode 100644
index e63c50e..0000000
--- a/lib/compat/getline.c
+++ /dev/null
@@ -1,60 +0,0 @@
-/* SPDX-License-Identifier: GPL-3.0-or-later */
-/*
- * getline.c
- *
- * Copyright (C) 2019 David Oberhollenzer <goliath@infraroot.at>
- */
-#include "config.h"
-#include "compat.h"
-
-#include <string.h>
-#include <stdlib.h>
-
-#ifndef HAVE_GETLINE
-ssize_t getline(char **line, size_t *n, FILE *fp)
-{
- size_t new_cap, len = 0, cap = 0;
- char *buffer = NULL, *new;
- int c;
-
- if (feof(fp) || ferror(fp))
- return -1;
-
- do {
- c = fgetc(fp);
-
- if (ferror(fp))
- return -1;
-
- if (c == EOF)
- c = '\n';
-
- if (len == cap) {
- new_cap = cap ? cap * 2 : 32;
- new = realloc(buffer, new_cap);
-
- if (new == NULL)
- return -1;
-
- buffer = new;
- cap = new_cap;
- }
-
- buffer[len++] = c;
- } while (c != '\n');
-
- if (len == cap) {
- new = realloc(buffer, cap ? cap * 2 : 32);
- if (new == NULL)
- return -1;
-
- buffer = new;
- }
-
- buffer[len] = '\0';
-
- *line = buffer;
- *n = len;
- return len;
-}
-#endif