The thing is, `!options.read` is **always** true because it’s either false or undefined.

`options && !options.read` worked before this patch because the only time where `options` was used was to pass `{ read: false }`, but that still remains a wrong way to express this condition. Basically, we were only testing that `options` was defined.

In a first patch I used `{ unread: true }` instead, but that was a bigger change so I went back to this. I thought the `newMessageReceived` variable would be self-explanatory.

FTR, we didn’t need to mark the thread as read before because it was not updated at all when a message was deleted. :-)