class Jekyll::PathManager

def join(base, item)

Returns a frozen string.

Reassigns `nil`, empty strings and empty arrays to a frozen empty string beforehand.
Wraps `File.join` to cache the frozen result.
def join(base, item)
  base = "" if base.nil? || base.empty?
  item = "" if item.nil? || item.empty?
  @join ||= {}
  @join[base] ||= {}
  @join[base][item] ||= File.join(base, item).freeze
end