Everyone deserves forgiveness for something once (within reason) but if they require forgiveness over and over again for the same thing then that's a decision on their part to not care enough to change and a decision on your part to not respect yourself enough to walk away!
You cannot expect change while still doing the same things as before