Added SILC Thread Queue API
[silc.git] / util / robodoc / Source / analyser.c
index 50af048108a9416cfd35d0a8154431e68c4050fd..0a6c08745993a3afa86b3b8883aabfff9a9e85a3 100644 (file)
@@ -73,8 +73,12 @@ RB_Analyse_Document (FILE * document)
            {
              RB_Say ("found header [line %5d]: \"%s\"\n",
                      line_number, new_header->name);
+#if 0
              if ((new_header->function_name
                   = RB_Function_Name (new_header->name)) == NULL)
+#endif
+             if ((new_header->function_name
+                  = RB_Function_Name (line_buffer)) == NULL)
                {
                  RB_Panic ("Can't determine the \"function\" name.\n");
                }
@@ -408,14 +412,17 @@ RB_Find_Header_Name (void)
   skip_while (isspace (*cur_char));
   if (*cur_char)
     {
-      char *end_char, old_char;
-
-      end_char = cur_char + RB_WordLen (cur_char);
-      old_char = *end_char;
-      *end_char = '\0';
-      cur_char = RB_StrDup (cur_char);
-      *end_char = old_char;
-      return (cur_char);
+      char *n;
+      int len;
+
+      if (strchr(cur_char, '\n'))
+       *strchr(cur_char, '\n') = '\0';
+
+      len = RB_WordLen(cur_char);
+
+      n = calloc(len + 1, sizeof(*cur_char));
+      strncpy(n, cur_char, len);
+      return n;
     }
   return (NULL);
 }