UBB.Dev
One of the testers on my 6.5.1 test board managed to find something broke . . . except that I cannot determine what/how it's broken. They have one PM they received from another tester, that when they try to reply to it, messhandler.php simply gives them a "We Cannot Proceed" page.

I've become that user and tried it, and got the same result. They can properly PM to all their other PMs, and all of my PMs work fine and I can reply to them all without issue.

Thinking that one of the PM mods I installed - or something I goofed while installing them - might be the culprit (Browsable PMs and Quoting original messages on PMs) I reverted to all clean "out of the .zip" code for messhandler.php & tmpl, messreply.php & tmpl, and viewmessage.php and tmpl. Absolutely no change in results, the same "We Cannot Proceed" page happens. I've browsed the Messages table in phpMyAdmin, and as far as I can tell, it LOOKS ok as far as structure goes.

Any thoughts or insight on this?
Actually, we got this figured out. The sender of the PM that the user was trying to reply to has his PMs turned off.

The lack of any sort of message indicating this is rather frustrating though.

Where should I look at adding an error message to indicate that the PM cannot be replied to because the recipient has PMs turned off (and why isn't such a message part of .threads to begin with? I could have sworn there was such a notification in 6.4.)?
Make sure you updated all of your language files. Language strings shhould be in the language file that matches the script name.
I'm working forward from a stock install of 6.5.1. I checked both the language files for messhandler and messreply - there's simply nothing there that says something along the lines of "This using isn't accepting private messages, so you can't reply to them." There's one for if they're ignoring you, and there's a "NOPRIVATE" check in the sendmessage.php, but there's just not a check in messreply.php for this case.
After poking around in the code, and finding what to look for in sendmessage.php, I found that there is indeed code in messhandler.php to check if a user has their PM acceptance disabled.

The /languages/english/messhandler.php file is however missing the language text for the "NO_PRIVATE" result. This causes an annoyingly uninformative "We Cannot Proceed" page with no hint as to why the software can't proceed.

Adding
Code
$ubbt_lang['NO_PRIVATE']  =     "This user is not accepting private messages.";
back into /languages/english/messhandler.php fixes this though, and will then display a message that the user isn't accepting PMs in the case that a user tries to respond to a PM from someone who isn't accepting them.

Just to verify that I wasn't going nuts after checking my fresh copy, I unzipped the 6.5.1 distribution file I downloaded Wednesday morning to check, and that line is missing from the messhandler.php language string file found in it. Looks like this was missed and is being distributed like that.
You should submit a bug report at http://www.ubbcentral.com/boards/postlist.php/Cat/0/Board/UBB5
Already did, though I had re-register again with their Groupee thing to do so, despite having been registered on UBBCentral in the past.
Yeeks, I've seen a number of missing language strings reported (or I should say errors that point to missing language strings) in 6.5.1.
© UBB.Developers