Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] Diff of /sml/trunk/src/cm/tools/tools.sml
ViewVC logotype

Diff of /sml/trunk/src/cm/tools/tools.sml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 344, Sun Jun 20 03:14:57 1999 UTC revision 345, Sun Jun 20 11:55:26 1999 UTC
# Line 184  Line 184 
184              fun rctxt rf = let              fun rctxt rf = let
185                  val dir = AbsPath.contextName c                  val dir = AbsPath.contextName c
186                  val cwd = OS.FileSys.getDir ()                  val cwd = OS.FileSys.getDir ()
                 fun doit () =  
                     (OS.FileSys.chDir dir; rf () before OS.FileSys.chDir cwd)  
187              in              in
188                  (Interrupt.guarded doit)                  SafeIO.perform { openIt = fn () => OS.FileSys.chDir dir,
189                                     closeIt = fn () => OS.FileSys.chDir cwd,
190                                     work = rf,
191                                     cleanup = fn () => () }
192                  handle ToolError { tool, msg } =>                  handle ToolError { tool, msg } =>
193                              (OS.FileSys.chDir cwd;                      (error (concat ["tool \"", tool, "\" failed: ", msg]); [])
                              error (concat ["tool \"", tool, "\" failed: ",  
                                             msg]);  
                              [])  
                      | exn => (OS.FileSys.chDir cwd; raise exn)  
194              end              end
195          in          in
196              rule (p, rctxt)              rule (p, rctxt)

Legend:
Removed from v.344  
changed lines
  Added in v.345

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0