Unlike other bugs, this change shouldn't break any application that is being called. argc >= 1 is the normal use case.
So this would break anything that calls execve() with argc==0. Is such call providing any functionality?
In addition to returning EINVAL being produced by not well written callers, another option would be to force argc==0 and fill up argv[0] with process name. That fix would make everything continue to work.