lkml.org 
[lkml]   [2007]   [Oct]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] Stop docproc segfaulting when SRCTREE isn't set.
On Tue, 9 Oct 2007 01:25:18 -0500 Rob Landley wrote:

> From: Rob Landley <rob@landley.net>
>
> Prevent docproc from segfaulting when SRCTREE isn't set.
>
> Signed-off-by: Rob Landley <rob@landley.net>

Acked-by: Randy Dunlap <randy.dunlap@oracle.com>

but needs 2 coding style fixes... see near end, below.

> ---
>
> scripts/basic/docproc.c | 10 ++++++++--
> 1 file changed, 8 insertions(+), 2 deletions(-)
>
> diff -r a26a53ed1101 scripts/basic/docproc.c
> --- a/scripts/basic/docproc.c Sun Oct 07 16:42:22 2007 -0700
> +++ b/scripts/basic/docproc.c Tue Oct 09 01:08:54 2007 -0500
> @@ -64,12 +64,15 @@ FILELINE * entity_system;
> #define FUNCTION "-function"
> #define NOFUNCTION "-nofunction"
>
> +char *srctree;
> +
> void usage (void)
> {
> fprintf(stderr, "Usage: docproc {doc|depend} file\n");
> fprintf(stderr, "Input is read from file.tmpl. Output is sent to stdout\n");
> fprintf(stderr, "doc: frontend when generating kernel documentation\n");
> fprintf(stderr, "depend: generate list of files referenced within file\n");
> + fprintf(stderr, "Environment variable SRCTREE: absolute path to kernel source tree.\n");
> }
>
> /*
> @@ -88,7 +91,7 @@ void exec_kernel_doc(char **svec)
> exit(1);
> case 0:
> memset(real_filename, 0, sizeof(real_filename));
> - strncat(real_filename, getenv("SRCTREE"), PATH_MAX);
> + strncat(real_filename, srctree, PATH_MAX);
> strncat(real_filename, KERNELDOCPATH KERNELDOC,
> PATH_MAX - strlen(real_filename));
> execvp(real_filename, svec);
> @@ -168,7 +171,7 @@ void find_export_symbols(char * filename
> if (filename_exist(filename) == NULL) {
> char real_filename[PATH_MAX + 1];
> memset(real_filename, 0, sizeof(real_filename));
> - strncat(real_filename, getenv("SRCTREE"), PATH_MAX);
> + strncat(real_filename, srctree, PATH_MAX);
> strncat(real_filename, filename,
> PATH_MAX - strlen(real_filename));
> sym = add_new_file(filename);
> @@ -335,6 +338,9 @@ int main(int argc, char *argv[])
> int main(int argc, char *argv[])
> {
> FILE * infile;
> +
> + srctree = getenv("SRCTREE");
> + if (!srctree) srctree = getcwd(NULL,0);

if (!srctree)
srctree = getcwd(NULL, 0);

> if (argc != 3) {
> usage();
> exit(1);
>
> --


---
~Randy
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2007-10-09 18:01    [W:0.058 / U:0.376 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site