head 1.3; access; symbols pkgsrc-2013Q2:1.3.0.32 pkgsrc-2013Q2-base:1.3 pkgsrc-2012Q4:1.3.0.30 pkgsrc-2012Q4-base:1.3 pkgsrc-2011Q4:1.3.0.28 pkgsrc-2011Q4-base:1.3 pkgsrc-2011Q2:1.3.0.26 pkgsrc-2011Q2-base:1.3 pkgsrc-2009Q4:1.3.0.24 pkgsrc-2009Q4-base:1.3 pkgsrc-2008Q4:1.3.0.22 pkgsrc-2008Q4-base:1.3 pkgsrc-2008Q3:1.3.0.20 pkgsrc-2008Q3-base:1.3 cube-native-xorg:1.3.0.18 cube-native-xorg-base:1.3 pkgsrc-2008Q2:1.3.0.16 pkgsrc-2008Q2-base:1.3 pkgsrc-2008Q1:1.3.0.14 pkgsrc-2008Q1-base:1.3 pkgsrc-2007Q4:1.3.0.12 pkgsrc-2007Q4-base:1.3 pkgsrc-2007Q3:1.3.0.10 pkgsrc-2007Q3-base:1.3 pkgsrc-2007Q2:1.3.0.8 pkgsrc-2007Q2-base:1.3 pkgsrc-2007Q1:1.3.0.6 pkgsrc-2007Q1-base:1.3 pkgsrc-2006Q4:1.3.0.4 pkgsrc-2006Q4-base:1.3 pkgsrc-2006Q3:1.3.0.2 pkgsrc-2006Q3-base:1.3 pkgsrc-2006Q2:1.1.0.30 pkgsrc-2006Q2-base:1.1 pkgsrc-2006Q1:1.1.0.28 pkgsrc-2006Q1-base:1.1 pkgsrc-2005Q4:1.1.0.26 pkgsrc-2005Q4-base:1.1 pkgsrc-2005Q3:1.1.0.24 pkgsrc-2005Q3-base:1.1 pkgsrc-2005Q2:1.1.0.22 pkgsrc-2005Q2-base:1.1 pkgsrc-2005Q1:1.1.0.20 pkgsrc-2005Q1-base:1.1 pkgsrc-2004Q4:1.1.0.18 pkgsrc-2004Q4-base:1.1 pkgsrc-2004Q3:1.1.0.16 pkgsrc-2004Q3-base:1.1 pkgsrc-2004Q2:1.1.0.14 pkgsrc-2004Q2-base:1.1 pkgsrc-2004Q1:1.1.0.12 pkgsrc-2004Q1-base:1.1 pkgsrc-2003Q4:1.1.0.10 pkgsrc-2003Q4-base:1.1 netbsd-1-6-1:1.1.0.6 netbsd-1-6-1-base:1.1 netbsd-1-6:1.1.0.8 netbsd-1-6-RELEASE-base:1.1 pkgviews:1.1.0.4 pkgviews-base:1.1 buildlink2:1.1.0.2 buildlink2-base:1.1 netbsd-1-5-PATCH003:1.1; locks; strict; comment @# @; 1.3 date 2006.08.05.19.54.26; author wiz; state dead; branches; next 1.2; 1.2 date 2006.08.04.19.23.39; author christos; state Exp; branches; next 1.1; 1.1 date 2001.09.19.08.57.07; author joda; state Exp; branches; next ; desc @@ 1.3 log @Complete move of id-utils to its new home, idutils. @ text @$NetBSD: patch-aj,v 1.2 2006/08/04 19:23:39 christos Exp $ --- src/lid.c.orig 2006-03-05 05:23:56.000000000 -0500 +++ src/lid.c 2006-08-04 14:50:44.415180548 -0400 @@@@ -31,7 +31,6 @@@@ #include #include #include -#include #include #include #include @@@@ -538,10 +537,11 @@@@ void report_grep (char const *name, struct file_link **flinkv) { - char line[1<<020]; + char *line = xmalloc(BUFSIZ); + size_t line_len = BUFSIZ; char const *pattern = 0; regex_t compiled; - char *file_name = alloca (PATH_MAX); + char file_name[PATH_MAX]; if (key_style == ks_pattern) { @@@@ -575,6 +575,15 @@@@ while (fgets (line + 1, sizeof (line) - 1, source_FILE)) { + size_t len; + while ((len = strlen(line)) == line_len - 1 && + line[line_len - 2] != '\n') + { + line = xrealloc(line, line_len + BUFSIZ); + line_len += BUFSIZ; + if (fgets(line + len, BUFSIZ, source_FILE) == NULL) + break; + } line_number++; if (pattern) { @@@@ -589,6 +598,7 @@@@ } fclose (source_FILE); } + free(line); } void @@@@ -765,7 +775,7 @@@@ { char pattern[BUFSIZ]; unsigned int count; - char *file_name = alloca (PATH_MAX); + char file_name[PATH_MAX]; char *eol; if (fgets (pattern, sizeof (pattern), stdin) == 0) @@@@ -1333,7 +1343,7 @@@@ continue; } /* march down both strings as long as we match */ - while (*++name == *++line) + while (*name != '\0' && *++name == *++line) ; /* is this the end of `name', is there a word delimiter ?? */ if (*name == '\0' && !IS_ALNUM (*line)) @ 1.2 log @welcome to idutils-4.1 @ text @d1 1 a1 1 $NetBSD$ @ 1.1 log @remove unnecessary alloca's; quash one buffer overrun @ text @d3 21 a23 7 --- src/fid.c~ Wed Aug 7 05:22:14 1996 +++ src/fid.c Wed Sep 19 10:20:47 2001 @@@@ -26,7 +26,6 @@@@ #include "error.h" #include "pathmax.h" #include "xmalloc.h" -#include "xalloca.h" d25 44 a68 11 int get_file_index __P((char *file_name)); int is_hit __P((unsigned char const *hits, int file_number)); @@@@ -203,7 +202,7 @@@@ struct file_link **members; struct file_link **end = &members_0[idh.idh_files]; struct file_link *fn_flink = 0; - char *file_name_buf = ALLOCA (char, PATH_MAX); + char file_name_buf[PATH_MAX]; int has_slash = (strchr (file_name, '/') != 0); int file_name_length = strlen (file_name); int idx = -1; @