Changeset 14537 for src/Pugs/Prim.hs

Show
Ignore:
Timestamp:
10/28/06 02:48:26 (2 years ago)
Author:
audreyt
Message:

* Really extremely wrong bandaid to get

./pugs -we 'my $fh = open("tmpx", :w); say $fh: "hi"; close $fh;'

to pass again; will investigate the IO::Dir-to-IO problem later...

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • src/Pugs/Prim.hs

    r14534 r14537  
    458458    obj <- createObject (mkType "IO::Dir") [] 
    459459    return . VObject $ obj{ objOpaque = Just $ toDyn dir } 
    460 op1 "IO::Dir::close" = op1 "IO::Dir::closedir" 
     460op1 "IO::Dir::close" = \v ->  
     461    ifValTypeIsa v "IO::Dir" (op1 "IO::Dir::closedir" v) $ case v of 
     462        VHandle{}   -> op1 "IO::close" v 
     463        VSocket{}   -> op1 "Socket::close" v 
     464        _           -> die "Close" v 
    461465op1 "IO::Dir::closedir" = guardedIO (closeDirStream . fromObject) 
    462466op1 "IO::Dir::rewind" = op1 "IO::Dir::rewinddir"