updated for version 7.4.499
Problem:    substitute() can be slow with long strings.
Solution:   Store a pointer to the end, instead of calling strlen() every
	    time. (Ozaki Kiichi)
Added tag v7-4-499 for changeset 65e72747feca