--- makeinfo/html.c~	Wed Dec 27 21:48:27 2000
+++ makeinfo/html.c	Fri Jan 19 15:19:23 2001
@@ -27,10 +27,14 @@
 /* See html.h.  */
 int html_output_head_p = 0;
 
+extern char *command_output_filename;
+
 void
 html_output_head ()
 {
   char *html_title;
+  char *p;
+  char base_name[PATH_MAX];
   
   if (html_output_head_p)
     return;
@@ -50,7 +54,33 @@
   add_word_args ("<meta name=description content=\"%s\">\n", html_title);
   add_word_args ("<meta name=generator content=\"makeinfo %s\">\n", VERSION);
   add_word ("<link href=\"http://texinfo.org/\" rel=generator-home>\n");
-  add_word ("</head><body>\n\n");
+  add_word ("</head><body>\n");
+  
+  /*
+    Some browsers really need to have all anchors defined, and
+   */
+  strcpy (base_name, basename (current_output_filename));
+  p = strchr (base_name, '.');
+  if (p >=0)
+    {
+      *p = '\0';
+    }
+  add_word_args ("<a name=\"%s\">\n", base_name);
+  /*
+    Also, the Top node may be referred to with the top level input file
+    name as anchor, instead of 'index'.
+   */
+  if (command_output_filename)
+    {
+      strcpy (base_name, basename (command_output_filename));
+      p = strchr (base_name, '.');
+      if (p >=0)
+	{
+	  *p = '\0';
+	}
+      add_word_args ("<a name=\"%s\">\n", base_name);
+    }
+  add_word ("\n");
 }
 
 
--- makeinfo/makeinfo.c~	Tue Dec 19 17:56:54 2000
+++ makeinfo/makeinfo.c	Fri Jan 19 15:11:21 2001
@@ -1364,7 +1364,9 @@
         input_text_offset = 0;
 
       real_output_filename = output_filename = command_output_filename;
+#if 0
       command_output_filename = NULL;
+#endif
     }
 
   canon_white (output_filename);

