[#10193] String.ord — David Flanagan <david@...>

Hi,

41 messages 2007/02/05
[#10197] Re: String.ord — Yukihiro Matsumoto <matz@...> 2007/02/06

Hi,

[#10198] Re: String.ord — David Flanagan <david@...> 2007/02/06

Yukihiro Matsumoto wrote:

[#10199] Re: String.ord — Daniel Berger <djberg96@...> 2007/02/06

David Flanagan wrote:

[#10200] Re: String.ord — David Flanagan <david@...> 2007/02/06

Daniel Berger wrote:

[#10208] Re: String.ord — "Nikolai Weibull" <now@...> 2007/02/06

On 2/6/07, David Flanagan <david@davidflanagan.com> wrote:

[#10213] Re: String.ord — David Flanagan <david@...> 2007/02/06

Nikolai Weibull wrote:

[#10215] Re: String.ord — "Nikolai Weibull" <now@...> 2007/02/06

On 2/6/07, David Flanagan <david@davidflanagan.com> wrote:

[#10216] Re: String.ord — David Flanagan <david@...> 2007/02/07

Nikolai Weibull wrote:

[#10288] Socket library should support abstract unix sockets — <noreply@...>

Bugs item #8597, was opened at 2007-02-13 16:10

12 messages 2007/02/13

[#10321] File.basename fails on Windows root paths — <noreply@...>

Bugs item #8676, was opened at 2007-02-15 10:09

11 messages 2007/02/15

[#10323] Trouble with xmlrpc — James Edward Gray II <james@...>

Some of the Ruby code used by TextMate makes use of xmlrpc/

31 messages 2007/02/15
[#10324] Re: Trouble with xmlrpc — "Berger, Daniel" <Daniel.Berger@...> 2007/02/15

> -----Original Message-----

[#10326] Re: Trouble with xmlrpc — James Edward Gray II <james@...> 2007/02/15

On Feb 15, 2007, at 1:29 PM, Berger, Daniel wrote:

[#10342] Re: Trouble with xmlrpc — James Edward Gray II <james@...> 2007/02/16

While I am complaining about xmlrpc, we have another issue. It's

[#10343] Re: Trouble with xmlrpc — Alex Young <alex@...> 2007/02/16

James Edward Gray II wrote:

[#10344] Re: Trouble with xmlrpc — James Edward Gray II <james@...> 2007/02/16

On Feb 16, 2007, at 12:08 PM, Alex Young wrote:

[ ruby-Bugs-8676 ] File.basename fails on Windows root paths

From: <noreply@...>
Date: 2007-02-15 17:09:08 UTC
List: ruby-core #10321
Bugs item #8676, was opened at 2007-02-15 10:09
You can respond by visiting: 
http://rubyforge.org/tracker/?func=detail&atid=1698&aid=8676&group_id=426

Category: Core
Group: 1.8.5
Status: Open
Resolution: None
Priority: 3
Submitted By: Daniel Berger (djberg96)
Assigned to: Nobody (None)
Summary: File.basename fails on Windows root paths

Initial Comment:
Ruby 1.8.5
Windows XP Pro, SP2

The File.basename method does not work properly on Windows root paths. IMO, calling File.basename on a root path should return itself. However, on MS Windows it appears to be dropping the volume name and it doesn't handle UNC root paths correctly:

require 'test/unit'

class TC_File_Basename_ClassMethod < Test::Unit::TestCase
   def test_basename_windows_root_forward_slash
      assert_equal("C:/", File.basename("C:/"))
   end

   def test_basename_windows_root_backslash
      assert_equal("C:\", File.basename("C:\"))  # Or "C:/" if you prefer
   end

   def test_basename_windows_unc_root_two_elements
      assert_equal("\\foo\bar", File.basename("\\foo\bar"))
   end

   def test_basename_windows_unc_root_one_element
      assert_equal("\\foo", File.basename("\\foo"))
   end
end

C:\Documents and Settings\djberge\My Documents\Ruby>ruby basename_bugs.rb
Loaded suite basename_bugs
Started
FFFF
Finished in 0.07 seconds.

  1) Failure:
test_basename_windows_root_backslash(TC_File_Basename_ClassMethod) [basename_bugs.rb:9]:
<"C:\"> expected but was
<"\">.

  2) Failure:
test_basename_windows_root_forward_slash(TC_File_Basename_ClassMethod) [basename_bugs.rb:5]:
<"C:/"> expected but was
<"/">.

  3) Failure:
test_basename_windows_unc_root_one_element(TC_File_Basename_ClassMethod) [basename_bugs.rb:17]:
<"\\foo"> expected but was
<"/">.

  4) Failure:
test_basename_windows_unc_root_two_elements(TC_File_Basename_ClassMethod) [basename_bugs.rb:13]:
<"\\foo\bar"> expected but was
<"/">.

4 tests, 4 assertions, 4 failures, 0 errors

This method should probably be moved to win32.c where you can use the Windows path handling functions from shlwapi.h to get things right, and convert the path separators as you see fit.

Regards,

Dan

----------------------------------------------------------------------

You can respond by visiting: 
http://rubyforge.org/tracker/?func=detail&atid=1698&aid=8676&group_id=426

In This Thread

Prev Next