diff --git a/ChangeLog b/ChangeLog index 21414ece3d..dfb242daaa 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Sun Mar 6 11:36:37 2005 Tanaka Akira + + * lib/pp.rb (File::Stat#pretty_print): Etc.getpwuid and Etc.getgrgid + may return nil. [ruby-talk:129826] + reported by Daniel Berger. + Sun Mar 6 06:34:31 2005 GOTOU Yuuzou * ext/openssl/ossl_ssl.c (ossl_start_ssl): should wait for that diff --git a/lib/pp.rb b/lib/pp.rb index 756dce6f51..7cbbd8a0c0 100644 --- a/lib/pp.rb +++ b/lib/pp.rb @@ -407,19 +407,23 @@ class File q.group { q.text "uid="; q.pp self.uid begin - name = Etc.getpwuid(self.uid).name - q.breakable; q.text "(#{name})" + pw = Etc.getpwuid(self.uid) rescue ArgumentError end + if pw + q.breakable; q.text "(#{pw.name})" + end } q.comma_breakable q.group { q.text "gid="; q.pp self.gid begin - name = Etc.getgrgid(self.gid).name - q.breakable; q.text "(#{name})" + gr = Etc.getgrgid(self.gid) rescue ArgumentError end + if gr + q.breakable; q.text "(#{gr.name})" + end } q.comma_breakable q.group {