Index: tools/gtk-doc.el
===================================================================
--- tools/gtk-doc.el	(revision 546)
+++ tools/gtk-doc.el	(working copy)
@@ -113,11 +113,16 @@ Using '%s' will expand to the name of th
   :type '(string)
   :group 'gnome-doc)
 
-(defcustom gnome-doc-blank " * \n"
+(defcustom gnome-doc-blank " *\n"
   "Used to put a blank line into the header."
   :type '(string)
   :group 'gnome-doc)
 
+(defcustom gnome-doc-blank-space " * \n"
+  "Used to put a blank line into the header, plus a space"
+  :type '(string)
+  :group 'gnome-doc)
+
 (defcustom gnome-doc-trailer " **/\n"
   "End of documentation header.
 
@@ -164,6 +169,7 @@ at least the first line of this which ma
 (make-variable-buffer-local 'gnome-doc-parameter)
 (make-variable-buffer-local 'gnome-doc-section)
 (make-variable-buffer-local 'gnome-doc-blank)
+(make-variable-buffer-local 'gnome-doc-blank-space)
 (make-variable-buffer-local 'gnome-doc-match-block)
 (make-variable-buffer-local 'gnome-doc-match-header)
 
@@ -179,6 +185,10 @@ at least the first line of this which ma
 (defun gnome-doc-insert-blank ()
   (insert gnome-doc-blank))
 
+;; insert a 'blank-space' comment line
+(defun gnome-doc-insert-blank-space ()
+  (insert gnome-doc-blank-space))
+
 ;; insert a section comment line
 (defun gnome-doc-insert-section (section)
   (insert (format gnome-doc-section section)))
@@ -198,12 +208,10 @@ Only C/C++ function types are properly s
 	(narrow-to-page)
 	(let (c-arglist
 	      c-funcname
-	      (c-point (point))
+	      c-point
 	      c-comment-point
 	      c-isvoid
 	      c-doinsert)
-	  (search-backward "(")
-	  (forward-line -2)
 	  (while (or (looking-at "^$")
 		     (looking-at "^ *}")
 		     (looking-at "^ \\*")
@@ -212,6 +220,9 @@ Only C/C++ function types are properly s
 	  (if (or (looking-at ".*void.*(")
 		  (looking-at ".*void[ \t]*$"))
 	      (setq c-isvoid 1))
+
+	  (setq c-point point)
+
 	  (save-excursion
 	    (if (re-search-forward "\\([A-Za-z0-9_:~]+\\)[ \t\n]*\\(([^)]*)\\)" c-point nil)
 		(let ((c-argstart (match-beginning 2))
@@ -244,7 +255,7 @@ Only C/C++ function types are properly s
 	
 		;; finish it off
 		(gnome-doc-insert-blank)
-		(gnome-doc-insert-blank)
+		(gnome-doc-insert-blank-space)
 		;; record the point of insertion
 		(setq c-insert-here (- (point) 1))
 
