- (let ((comment-line-prefix
- (concat "[ \t]*\\(" c-current-comment-prefix "\\)[ \t]*")))
-
- (setq paragraph-start (concat comment-line-prefix
+ (let* ((empty-is-prefix (string-match c-current-comment-prefix ""))
+ (nonws-comment-line-prefix
+ (concat "\\(" c-current-comment-prefix "\\)[ \t]*"))
+ (comment-line-prefix (concat "[ \t]*" nonws-comment-line-prefix))
+ (blank-or-comment-line-prefix
+ (concat "[ \t]*"
+ (if empty-is-prefix "" "\\(")
+ nonws-comment-line-prefix
+ (if empty-is-prefix "" "\\)?"))))
+
+ (setq paragraph-start (concat blank-or-comment-line-prefix