C# Iniciante, erro grave em funçao

[i]Olá, essa função deve ler um arquivo de texto e retornar uma determinada linha, e o segundo método uma substring dessa linha, uma pessoa me disse que tem um erro grave na função, mas n quer me dizer qual o erro, alguém poderia me explicar qual o erro grave?

Pode ser por chamar um método estático dentro de outro?

public static string GetVersion()
        {
            string version = "";
            foreach (var line in File.ReadAllLines(filePath))
            {
                if (line.Contains(string))
                {
                    string substr = line.Substring(11);
                    return substr;
                }

            }

            return version;
        }

        public static string GetPatch()
        {
            return GetVersion().Substring(0, 4);
        }