diff --git a/ChangeLog b/ChangeLog index 154950cf6a..cfa56ff59c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,4 +1,10 @@ -Sat Aug 20 2005 22:05:25 2005 K.Kosako +Sun Aug 21 00:10:23 2005 NAKAMURA, Hiroshi + + * lib/wsdl/xmlSchema/importer.rb (WSDL::XMLSchema::Importer#fetch): add + a workaround for importing an WSDL whose path begins with drive + letter. [ruby-dev:26242] + +Sat Aug 20 22:05:25 2005 K.Kosako * regexec.c (code_is_in_cclass_node): check code size. [ruby-dev:26840] diff --git a/lib/wsdl/xmlSchema/importer.rb b/lib/wsdl/xmlSchema/importer.rb index 8829d5240c..f57bfd972a 100644 --- a/lib/wsdl/xmlSchema/importer.rb +++ b/lib/wsdl/xmlSchema/importer.rb @@ -48,12 +48,18 @@ private if location.scheme == 'file' or (location.relative? and FileTest.exist?(location.path)) content = File.open(location.path).read + elsif location.scheme and location.scheme.size == 1 and + FileTest.exist?(location.to_s) + # ToDo: remove this ugly workaround for a path with drive letter + # (D://foo/bar) + content = File.open(location.to_s).read else client = web_client.new(nil, "WSDL4R") client.proxy = ::SOAP::Env::HTTP_PROXY client.no_proxy = ::SOAP::Env::NO_PROXY if opt = ::SOAP::Property.loadproperty(::SOAP::PropertyName) - ::SOAP::HTTPConfigLoader.set_options(client, opt["client.protocol.http"]) + ::SOAP::HTTPConfigLoader.set_options(client, + opt["client.protocol.http"]) end content = client.get_content(location) end