I have solved the problem.
This line of code resets the post_parent entry of the array args to the current forum id. $r['post_parent'] = bbp_get_forum_id( $r['post_parent'] );
Creating a new function with that line commented solved the problem.
Found the problem. It is related to the bbp style plugin. I have already contacted the plugin author, hoping to solve the bug. Probably there’s something wrong in the way the plugin checks the subforum looking for the last topic/reply id.
Sorry to resurrect an old topic, but I’m experiencing the same kind of problem rtomo had.
The topic showed in the freshness is wrong. And when I mean wrong, I mean that the time is correct, but the topic is not.
This happens only in forums that have a subforum. In case of multiple subforum, the last topic of the last one is showed in the freshness. The link showed in the freshness time is incorrect too, even if the time itself is correct.
If this is not the right place to post about my problem, I will open a new topic.