Only convert args from list to array if they actually exist

Profiling tool suggested this was using disproportionate amounts of CPU
as it was using reflection to create the new Array

Tests afterwards indicate a performance improvement but not a
dramatic one - maybe 10%