From f725137b36b0a847bfab6401dc3130670a62910a Mon Sep 17 00:00:00 2001 From: Arnaud Giersch Date: Wed, 25 Oct 2017 14:31:07 +0200 Subject: [PATCH] Kill now unused xbt_getline(). --- ChangeLog | 4 ++++ include/xbt/file.h | 16 +++----------- src/xbt/xbt_os_file.c | 49 ------------------------------------------- 3 files changed, 7 insertions(+), 62 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5dc0488440..7d1e8f9d9e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -8,6 +8,10 @@ SimGrid (3.18) NOT RELEASED YET (target: December 24 2017) - Storage::getName() changed to return a std::string, use intead Storage::getCname() to get a char*. + XBT + - Removed unused functions: + - xbt/file.h: xbt_getline() + SimGrid (3.17) Released October 8 2017 The Drained Leaks release: (almost) no known leaks despite the tests. diff --git a/include/xbt/file.h b/include/xbt/file.h index 8f6941a540..b22a004e46 100644 --- a/include/xbt/file.h +++ b/include/xbt/file.h @@ -1,4 +1,4 @@ -/* Copyright (c) 2007-2015. The SimGrid Team. +/* Copyright (c) 2007-2017. The SimGrid Team. * All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it @@ -7,27 +7,17 @@ #ifndef XBT_FILE_H #define XBT_FILE_H -#include /* ssize_t */ -#include /* va_* */ -#include /* FILE */ -#include /* size_t, ssize_t */ -#include "xbt/misc.h" -#include "xbt/dynar.h" -#include "xbt/dict.h" -#include "simgrid_config.h" /* FILE for getline */ +#include SG_BEGIN_DECL() /** @defgroup XBT_file File manipulation functions * @ingroup XBT_misc * - * This module redefine some quite classical functions such as xbt_getline() or xbt_dirname() for the platforms + * This module redefine some quite classical functions such as xbt_dirname() or xbt_basename() for the platforms * lacking them. * @{ */ -/* Our own implementation of getline, mainly useful on the platforms not enjoying this function */ -XBT_PUBLIC(ssize_t) xbt_getline(char **lineptr, size_t * n, FILE * stream); - /* Our own implementation of dirname, that does not exist on windows */ XBT_PUBLIC(char *) xbt_dirname(const char *path); XBT_PUBLIC(char *) xbt_basename(const char *path); diff --git a/src/xbt/xbt_os_file.c b/src/xbt/xbt_os_file.c index 692b7c3ab6..d7dbf02ffb 100644 --- a/src/xbt/xbt_os_file.c +++ b/src/xbt/xbt_os_file.c @@ -17,55 +17,6 @@ #include "libgen.h" /* POSIX dirname */ -/** @brief Get a single line from the stream (reimplementation of the GNU getline) - * - * This is a reimplementation of the GNU getline function, so that our code don't depends on the GNU libc. - * - * xbt_getline() reads an entire line from stream, storing the address of the buffer containing the text into *buf. - * The buffer is null-terminated and includes the newline character, if one was found. - * - * If *buf is NULL, then xbt_getline() will allocate a buffer for storing the line, which should be freed by the user - * program. - * - * Alternatively, before calling xbt_getline(), *buf can contain a pointer to a malloc()-allocated buffer *n bytes in - * size. If the buffer is not large enough to hold the line, xbt_getline() resizes it with realloc(), updating - * *buf and *n as necessary. - * - * In either case, on a successful call, *buf and *n will be updated to reflect the buffer address and allocated size - * respectively. - */ -ssize_t xbt_getline(char **buf, size_t *n, FILE *stream) -{ - int ch = getc(stream); - if (ferror(stream) || feof(stream)) - return -1; - - if (!*buf) { - *n = 512; - *buf = xbt_malloc(*n); - } - - ssize_t i = 0; - do { - if (i == *n) { - *n += 512; - *buf = xbt_realloc(*buf, *n); - } - (*buf)[i] = ch; - i++; - if (ch == '\n') - break; - } while ((ch = getc(stream)) != EOF); - - if (i == *n) { - *n += 1; - *buf = xbt_realloc(*buf, *n); - } - (*buf)[i] = '\0'; - - return i; -} - /** @brief Returns the directory component of a path (reimplementation of POSIX dirname) * * The argument is never modified, and the returned value must be freed after use. -- 2.20.1