When sending out notifications for a new PEP publication, Openfire determines what all full JIDs of each subscriber are. It then iterates over each full JID, and determines if that JID is to be sent a notification.
In the existing code, Openfire seems to stop processing the JIDs of one recipient, if it finds one for which a notification is not to be sent. It will not evaluate other JIDs for the same recipient.
If a user is online with two devices, and only the second device is interested in receiving PEP notifications, it currently wont receive this, if it happens to be the second resource to be evaluated.