Index: bp-forums/bp-forums-functions.php
===================================================================
--- bp-forums/bp-forums-functions.php	(revision 5226)
+++ bp-forums/bp-forums-functions.php	(working copy)
@@ -160,8 +160,11 @@
 	$r = wp_parse_args( $args, $defaults );
 	extract( $r, EXTR_SKIP );
 
+	// Check if the user is a spammer
+	if ( bp_core_is_user_spammer( $topic_poster ) || bp_core_is_user_deleted( $topic_poster ) )
+		return false;
+
 	$topic_title = strip_tags( $topic_title );
-
 	if ( empty( $topic_title ) || !strlen( trim( $topic_title ) ) )
 		return false;
 
@@ -195,6 +198,10 @@
 	$r = wp_parse_args( $args, $defaults );
 	extract( $r, EXTR_SKIP );
 
+	// Check if the user is a spammer
+	if ( bp_core_is_user_spammer( $bp->loggedin_user->id ) || bp_core_is_user_deleted( $bp->loggedin_user->id ) )
+		return false;
+
 	// bb_insert_topic() will append tags, but not remove them. So we remove all existing tags.
 	bb_remove_topic_tags( $topic_id );
 
@@ -486,6 +493,10 @@
 	$r = wp_parse_args( $args, $defaults );
 	extract( $r, EXTR_SKIP );
 
+	// Check if the user is a spammer
+	if ( bp_core_is_user_spammer( $bp->loggedin_user->id ) || bp_core_is_user_deleted( $bp->loggedin_user->id ) )
+		return false;
+
 	if ( !$post = bp_forums_get_post( $post_id ) )
 		$post_id = false;
 
