summaryrefslogtreecommitdiff
path: root/src/emacs.c
diff options
context:
space:
mode:
authorPavel Janík <Pavel@Janik.cz>2001-10-28 13:42:48 +0000
committerPavel Janík <Pavel@Janik.cz>2001-10-28 13:42:48 +0000
commitd883731ca8d48f947d4df178d64c41de989364c6 (patch)
tree336e2bd022dfb21697b0a29830d95647b2d9f9c3 /src/emacs.c
parent040122547f4264c7c6576bb9d0053dd9c3aac853 (diff)
downloademacs-d883731ca8d48f947d4df178d64c41de989364c6.tar.gz
(bug_reporting_address): New function.
Use it when displaying usage message.
Diffstat (limited to 'src/emacs.c')
-rw-r--r--src/emacs.c39
1 files changed, 37 insertions, 2 deletions
diff --git a/src/emacs.c b/src/emacs.c
index 4222a8e3eb0..db031bc5c8a 100644
--- a/src/emacs.c
+++ b/src/emacs.c
@@ -285,8 +285,10 @@ abbreviation for a --option.\n\
\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 @@ void (*__malloc_initialize_hook) () = malloc_initialize_hook;
#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 @@ main (argc, argv, envp)
{
printf (USAGE1, argv[0]);
printf (USAGE2);
+ printf (USAGE3, bug_reporting_address());
exit (0);
}