There is a chance that multiple listeners on `iccinfochange`, which results to `handler` being executed multiple times. Use `oniccinfochange` should be fine.