From: Tim Kynerd Date: 2003-11-24T16:22:11+09:00 Subject: Re: "wrong argument type nil (expected String)" from Dir.chdir On Mon, 24 Nov 2003 07:24:18 +0100, Tim Kynerd wrote: > On Mon, 24 Nov 2003 09:20:03 +0900, Yukihiro Matsumoto wrote: > >> Hi, >> >> In message ""wrong argument type nil (expected String)" from Dir.chdir" >> on 03/11/24, Tim Kynerd writes: >> >> |Can anybody tell me why this line: >> | >> |Dir.chdir("/") >> | >> |results in the error "wrong argument type nil (expected String)" when >> |running in the debugger (ruby -r debug), but not when running in irb? >> >> Can't reproduce. Could you give me more information? Your platform, >> and exact version of ruby interpreter (shown by ruby -v). >> >> matz. > > Thanks Matz. > > Sorry, should have posted a bit more information to start with. I'm > running under SuSE Linux 8.2, kernel 2.4 (can't find the full version > number). ruby -v reports: > > ruby 1.6.8 (2002-12-24) [i686-linux] > > After having problems with a similar statement as the first statement in > a program, I tried creating a new program with just the one line I > posted above. That shorter program also returns the "wrong argument type > nil (expected String)" error. However, typing the same line into irb > works fine and returns 0 (and after doing so, typing Dir.getwd into irb > returns the expected "/"). > > Grateful for any help you can provide. Sorry to be following up to myself, but here's a bit more info (that just came to me in the shower ;-) ). The following program: newdir = "/" Dir.chdir(newdir) throws the same error in the debugger, but on the *first* line with the string assignment. This gives me the strong feeling that something very non-obvious is going on. Also, a trip to /usr/src tells me I'm running kernel 2.4.20. -- Tim Kynerd Sundbyberg (sm�stan i storstan), Sweden tkynerd@spamcop.net Sunrise in Stockholm today: 8:03 Sunset in Stockholm today: 15:04 My rail transit photos at http://www.kynerd.nu