code: public String getDisplayLanguage(Locale locale) {
          String languageCode = baseLocale.getLanguage();
          if (languageCode.isEmpty()) {
              return "";
          }
  
          // Hacks for backward compatibility.
          //
          // Our language tag will contain "und" if the languageCode is invalid
          // or missing. ICU will then return "langue indéterminée" or the equivalent
          // display language for the indeterminate language code.
          //
          // Sigh... ugh... and what not.
          final String normalizedLanguage = normalizeAndValidateLanguage(
                  languageCode, false /* strict */);
          if (UNDETERMINED_LANGUAGE.equals(normalizedLanguage)) {
              return languageCode;
          }
  
          // TODO: We need a new hack or a complete fix for http://b/8049507 --- We would
          // cover the frameworks' tracks when they were using "tl" instead of "fil".
          String result = ICU.getDisplayLanguage(this, locale);
          if (result == null) { // TODO: do we need to do this, or does ICU do it for us?
              result = ICU.getDisplayLanguage(this, Locale.getDefault());
          }
          return result;
      }
docs: Returns the name of this locale's language, localized to {@code locale}.
  If the language name is unknown, the language code is returned.