scusa, non avevo letto il codice.
la magic io la considero preistoria, tentava appunto di mettere una pezza in modo automatico ma non é specifica. se attivo andrebbe eseguito lo strip e successivamente l'escape, altrimenti esegui direttamente l'escape.
sarebbe buona pratica avvalersi dei prepared statement.
edit:
la magic non dipende dal fatto che l'estensione mysql è deprecata. In ogni caso la magic quote è stata deprecata ancora prima con la 5.3 e rimossa con la 5.4