Skip to content
  • Evangelos Foutras's avatar
    FindRuby: Fix output check in _RUBY_CONFIG_VAR · 802d0aa0
    Evangelos Foutras authored and Brad King's avatar Brad King committed
    Since commit v2.8.8~173^2 (FindRuby: clean up querying variables from
    Ruby, 2012-02-17) we query RbConfig::CONFIG first and, if the command
    fails or its output equates to a false constant, then fall back to
    querying Config::CONFIG.
    
    Due to the above, an error condition exists with Ruby 2.2.0; when
    querying RbConfig::CONFIG['TEENY'], the output of '0' will be discarded
    since it matches the false constant '0'.
    
    In previous versions this wasn't a problem, but Ruby 2.2 has completely
    removed Config::CONFIG. This causes RUBY_VERSION_PATCH to be set to an
    empty string and the Ruby version to be detected as '2.2.' (instead of
    '2.2.0').
    
    Fix the output check to explicitly look for an empty string before using
    the fallback query method. (Someone more familiar with Ruby might be
    able to deem the fallback as unnecessary and fully remove it.)
    802d0aa0