Skip to content

Commit

Permalink
Only do case-insensitive compare on Windows.
Browse files Browse the repository at this point in the history
Part of #3907.
headius committed May 25, 2016
1 parent 3b2c429 commit 0261703
Showing 2 changed files with 6 additions and 2 deletions.
4 changes: 3 additions & 1 deletion core/src/main/java/org/jruby/RubyGlobal.java
Original file line number Diff line number Diff line change
@@ -465,7 +465,9 @@ private IRubyObject normalizeEnvString(ThreadContext context, IRubyObject key, I
RubyString valueStr = (RubyString) value;

// Ensure PATH is encoded like filesystem
if (key.toString().equalsIgnoreCase("PATH")) {
if (Platform.IS_WINDOWS ?
key.toString().equalsIgnoreCase("PATH") :
key.toString().equals("PATH")) {
Encoding enc = runtime.getEncodingService().getFileSystemEncoding();
valueStr = EncodingUtils.strConvEnc(context, valueStr, valueStr.getEncoding(), enc);
} else {
4 changes: 3 additions & 1 deletion core/src/main/java/org/jruby/util/OSEnvironment.java
Original file line number Diff line number Diff line change
@@ -113,7 +113,9 @@ private static Map<RubyString, RubyString> asMapOfRubyStrings(final Ruby runtime

// Ensure PATH is encoded like filesystem
Encoding valueEncoding = keyEncoding;
if ( key.equalsIgnoreCase("PATH") ) {
if ( org.jruby.platform.Platform.IS_WINDOWS ?
key.toString().equalsIgnoreCase("PATH") :
key.toString().equals("PATH") ) {
valueEncoding = runtime.getEncodingService().getFileSystemEncoding();
}

0 comments on commit 0261703

Please sign in to comment.