optimization: eliminate a double call to the method url() and store result in a local variable

The url() method when defined in an engine class typically contains logic and dynamic string allocation.
and it annoyed me.

may be url_result is not the best name but that is the best I came up with.
Merge pull request #234 from lidlanca/patch-3

optimization: eliminate a double call to the method url() and store result in a local variable