diff options
-rw-r--r-- | editors/sed.c | 4 | ||||
-rw-r--r-- | include/libbb.h | 4 | ||||
-rw-r--r-- | libbb/dirname.c | 2 | ||||
-rw-r--r-- | libbb/libbb.h | 4 | ||||
-rw-r--r-- | libbb/strdup_substr.c | 34 | ||||
-rw-r--r-- | sed.c | 4 |
6 files changed, 5 insertions, 47 deletions
diff --git a/editors/sed.c b/editors/sed.c index 89b1668..24b62e5 100644 --- a/editors/sed.c +++ b/editors/sed.c @@ -223,7 +223,7 @@ static int parse_subst_cmd(struct sed_cmd *sed_cmd, const char *substr) idx = index_of_next_unescaped_regexp_delim(sed_cmd, substr, ++idx); if (idx == -1) error_msg_and_die("bad format in substitution expression"); - match = strdup_substr(substr, oldidx, idx); + match = xstrndup(substr + oldidx, idx - oldidx); /* determine the number of back references in the match string */ /* Note: we compute this here rather than in the do_subst_command() @@ -242,7 +242,7 @@ static int parse_subst_cmd(struct sed_cmd *sed_cmd, const char *substr) idx = index_of_next_unescaped_regexp_delim(sed_cmd, substr, ++idx); if (idx == -1) error_msg_and_die("bad format in substitution expression"); - sed_cmd->replace = strdup_substr(substr, oldidx, idx); + sed_cmd->replace = xstrndup(substr + oldidx, idx - oldidx); /* process the flags */ while (substr[++idx]) { diff --git a/include/libbb.h b/include/libbb.h index c29955b..0fc7045 100644 --- a/include/libbb.h +++ b/include/libbb.h @@ -254,10 +254,6 @@ extern struct hostent *xgethostbyname(const char *name); char *dirname (const char *path); -static inline char *strdup_substr (const char *s, int start, int end) -{ - return xstrndup (s+start, end-start); -} int make_directory (char *path, mode_t mode, int flags); #define CT_AUTO 0 diff --git a/libbb/dirname.c b/libbb/dirname.c index cc50f58..5f83994 100644 --- a/libbb/dirname.c +++ b/libbb/dirname.c @@ -45,5 +45,5 @@ char *dirname(const char *path) if (s < path) return xstrdup ("."); else - return strdup_substr (path, 0, s - path + 1); + return xstrndup (path, s - path + 1); } diff --git a/libbb/libbb.h b/libbb/libbb.h index c29955b..0fc7045 100644 --- a/libbb/libbb.h +++ b/libbb/libbb.h @@ -254,10 +254,6 @@ extern struct hostent *xgethostbyname(const char *name); char *dirname (const char *path); -static inline char *strdup_substr (const char *s, int start, int end) -{ - return xstrndup (s+start, end-start); -} int make_directory (char *path, mode_t mode, int flags); #define CT_AUTO 0 diff --git a/libbb/strdup_substr.c b/libbb/strdup_substr.c deleted file mode 100644 index 85030b1..0000000 --- a/libbb/strdup_substr.c +++ /dev/null @@ -1,34 +0,0 @@ -/* vi: set sw=4 ts=4: */ -/* - * Mini strdup_substr function. - * - * Copyright (C) 2001 Mark Whitley. - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -/* Return a substring of STR, starting at index START and ending at END, - * allocated on the heap. */ - -#include "libbb.h" - -char *strdup_substr(const char *str, int start, int end) -{ - int size = end - start + 1; - char *newstr = xmalloc(size); - memcpy(newstr, str+start, size-1); - newstr[size-1] = '\0'; - return newstr; -} @@ -223,7 +223,7 @@ static int parse_subst_cmd(struct sed_cmd *sed_cmd, const char *substr) idx = index_of_next_unescaped_regexp_delim(sed_cmd, substr, ++idx); if (idx == -1) error_msg_and_die("bad format in substitution expression"); - match = strdup_substr(substr, oldidx, idx); + match = xstrndup(substr + oldidx, idx - oldidx); /* determine the number of back references in the match string */ /* Note: we compute this here rather than in the do_subst_command() @@ -242,7 +242,7 @@ static int parse_subst_cmd(struct sed_cmd *sed_cmd, const char *substr) idx = index_of_next_unescaped_regexp_delim(sed_cmd, substr, ++idx); if (idx == -1) error_msg_and_die("bad format in substitution expression"); - sed_cmd->replace = strdup_substr(substr, oldidx, idx); + sed_cmd->replace = xstrndup(substr + oldidx, idx - oldidx); /* process the flags */ while (substr[++idx]) { |