Mercurial > emacs
changeset 40405:ea36983f19d3
(bug_reporting_address): New function.
Use it when displaying usage message.
author | Pavel Janík <Pavel@Janik.cz> |
---|---|
date | Sun, 28 Oct 2001 13:40:29 +0000 |
parents | a126125a6d01 |
children | 6fbf8299d0f2 |
files | src/emacs.c |
diffstat | 1 files changed, 37 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/emacs.c Sun Oct 28 10:56:21 2001 +0000 +++ b/src/emacs.c Sun Oct 28 13:40:29 2001 +0000 @@ -285,8 +285,10 @@ \n\ Various environment variables and window system resources also affect\n\ Emacs' operation. See the main documentation.\n\ -\n\ -Report bugs to bug-gnu-emacs@gnu.org. First, please see the Bugs\n\ +\n" + +#define USAGE3 "\ +Report bugs to %s. First, please see the Bugs\n\ section of the Emacs manual or the file BUGS.\n" @@ -713,6 +715,38 @@ #endif /* DOUG_LEA_MALLOC */ + +#define REPORT_EMACS_BUG_ADDRESS "bug-gnu-emacs@gnu.org" +#define REPORT_EMACS_BUG_PRETEST_ADDRESS "emacs-pretest-bug@gnu.org" + +/* This function is used to determine an address to which bug report should + be sent. */ + +char *bug_reporting_address () +{ + int count=0; + Lisp_Object temp; + char *string; + + temp = Fsymbol_value (intern ("emacs-version")); + + /* When `emacs-version' is invalid, use normal address. */ + if (!STRINGP(temp)) + return REPORT_EMACS_BUG_ADDRESS; + + string = XSTRING (temp)->data; + + do { + if (*string=='.') + count++; + } while (string++,*string); + + /* When `emacs-version' has at least three dots, it is development or + pretest version of Emacs. */ + return (count>=3) ? REPORT_EMACS_BUG_PRETEST_ADDRESS : REPORT_EMACS_BUG_ADDRESS; +} + + /* ARGSUSED */ int main (argc, argv, envp) @@ -978,6 +1012,7 @@ { printf (USAGE1, argv[0]); printf (USAGE2); + printf (USAGE3, bug_reporting_address()); exit (0); }