No entiendo para qué usarías un stringlist temporal. Con un sencillo bucle puedes almacenar la concatenación de cadenas en una cadena temporal y luega ésta agregarla al segundo stringlist.
Por otra parte, la propiedad StringList.Text contiene el texto de todas las líeas juntas, pero separadas por #13#10 (CRLF, fín de línea), así que bastaría reemplazar todos los #13#10 por una cadena vacía para obtener el mismo resultado. Por ejemplo, usando la función AnsiReplaceStr:
Código Delphi
[-]
StringList2.Add(StrUtils.AnsiReplaceStr(StringList1.Text, #13#10, ''));
LineComment Saludos