Ora non ho modo di provare ma mi viene in mente una cosa:

si potrebbe redirigere lo stderr sullo stdout quando lanci il comando.
Così in assenza di errori l'array torna vuoto.
Così gestire la cosa dovrebbe tornare più semplice credo.