java: make RunJava handle empty arguments

Currently it would throw ArrayIndexOutOfBounds when 'java' is called without arguments.

Signed-off-by: Tomasz Grabiec <tgrabiec@cloudius-systems.com>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
string.cc: make sure the fixup values are sane

the rcx register holds the amount of bytes we need to copy during the copy
operations. We will advance it by the fixup, which means that it should never,
ever, go bellow 0. I saw that happening due to a bug, and took me some time to
figure that out - the result is memory corruption, which can manifest in weird
ways. Should that assert be in place, I would have noticed sooner

Signed-off-by: Glauber Costa <glommer@cloudius-systems.com>
Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>