If photon has energy, it has gravity.
If photon has gravity and move through space at light speed, it creates gravitational shock wave (like sonic boom because gravity move at the same speed as photon).
If photon creates gravitational shock wave, it looses energy.
If photon looses energy, so it decays.
Which sentence is wrong ? I don't think all of these will be true because if these are true, they will prove that photon have to decay which we still can't prove. But I have no idea which one is wrong.