I've tried to edit the code to make the title NOT appear for all forums where the user don't have access to, copying a couple of lines from forumdisplay.php (I'm no hacker, i'm simply a user, and know very little of PHP).
It works perfectly for me (but TEST IT AT YOUR OWN RISK, im no php coder

), but:
A) I'm sure there is a better way to implement it... i RECHECK permissions, while probably permissions are already checked and i should just pull them out from the right variable... but i dont know how
B) I'm not sure at all if the title will display or not, in the case
Category
- Private subforum
- Non private subforum
I think this mini edit i did just remove the title in the case the forum is VISIBLE from homepage, and NOT in the case the title is in a category visibile, but comes from a private subforum you shouldnt have access to (that's because i simply check if the user can enter the forum, and display nothing if he can't... the user can access that category, so the title is shown, even if the title comes from a "non accessible for the user" forum
Yet, it works, it doesn't show the title for the forums you don't have access to

I tested it, but USE IT AT YOUR OWN RISK.
Code:
// Last post hack + check for view
$titleperm=getpermissions($forumid,-1,-1,$foruminfo['parentlist']);
if ($titleperm[canview]) {
$showtitle=1;
}
if ($showtitle) {
$forum['lasttitle']=unhtmlspecialchars($forum['lasttitle']);
if (strlen($forum['lasttitle']) > 25) {
$forum['lasttitle'] = substr($forum['lasttitle'], 0, 23);
$forum['lasttitle'] .= '..';
}
} else {
$forum['lasttitle']='';
}