[#11073] segfault printing instruction sequence for iterator — <noreply@...>

Bugs item #10527, was opened at 2007-05-02 14:42

14 messages 2007/05/02
[#11142] Re: [ ruby-Bugs-10527 ] segfault printing instruction sequence for iterator — Nobuyoshi Nakada <nobu@...> 2007/05/10

Hi,

[#11188] Re: [ ruby-Bugs-10527 ] segfault printing instruction sequence for iterator — Paul Brannan <pbrannan@...> 2007/05/16

On Thu, May 10, 2007 at 04:51:18PM +0900, Nobuyoshi Nakada wrote:

[#11234] Planning to release 1.8.6 errata — Urabe Shyouhei <shyouhei@...>

Hi all.

17 messages 2007/05/25

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

From: Nobuyoshi Nakada <nobu@...>
Date: 2007-05-13 04:20:05 UTC
List: ruby-core #11162
Hi,

At Sun, 13 May 2007 02:07:13 +0900,
Austin Ziegler wrote in [ruby-core:11161]:
> On 5/12/07, Nobuyoshi Nakada <nobu@ruby-lang.org> wrote:
> > At Fri, 16 Feb 2007 02:09:08 +0900,
> > Daniel Berger wrote in [ruby-core:10321]:
> > > 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:
> > Drive letter is part of base name?  It feels very strange to me.
> 
> It's right, though.
> 
> File.basename("C:/") should return "C:/"
> File.dirname("C:/") should return "C:/"
> File.basename("//server/share/") must return "//server/share/"
> File.dirname("//server/share/") must return "//server/share/"

What's the reason?  Do you consider a drive letter to be a part
of basename?

And if they were work so, then File.join(*File.split("C:/"))
should return "C:/C:/", but it is incorrect on Windows.  Is it
what you want?

> This would be true for any filesystem environment that allows multiple roots.

Really?  Do you know other such environments?

-- 
Nobu Nakada

In This Thread