I have a 2010 SharePoint workflow that is set to start when an item is changed. Within the workflow, I have logic that is testing to see if a specific field changed and if so, send an email. I am doing this by storing the "before" value in a hidden field, comparing it to the new value and if they aren't equal, send the email. The problem is that the email is being sent even when this field isn't changing. I can't figure out why. I've moved some logic around in the workflow, thinking that might be the cause, but it hasn't fixed the problem. I've confirmed that both the hidden field and the specific field values are the same. Then I edit the item using a form, keeping the specific field the same but editing another field and the email is still being sent. Below is a snapshot.
Update: Both of the comparison fields are person/group fields (comparing on Display Name). I've confirmed their values match prior to editing the form for the list item.