On Fri, 27 Sep 2013 22:23:43 +0200, Mike Wey wrote:

How is toStringArray limited to 10 strings?

In src/glib/Str.d at line 190:

	public static string[] toStringArray(char** args)
		if ( args is null )
			return null;
		string[] argv;
		char* arg = args[0];
		int i=0;
		while( (arg) != null && i<10)
			argv ~= toString(arg);
			arg = args[i];
		return argv;

Because of the i in the while loop. As long as arg points to a valid string and i<10 concat to argv. If i==10 stop looping even if arg points to a valid string.

I don't know if this is an arbitrary limit or some underlying need for that limit.