Changeset 813
- Timestamp:
- 09/20/07 17:44:36 (1 year ago)
- Files:
-
- trunk/docs/ChangeLog (modified) (1 diff)
- trunk/hcf/process.d (modified) (3 diffs)
- trunk/sss/conf.d (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/docs/ChangeLog
r807 r813 9 9 - installdir hook command now manifests properly. 10 10 - 'include' setting, counter to 'exclude' (see ticket #111). 11 - Now throws an exception if a hook command fails, rather than 12 exiting. This allows DSSS to clean up after itself more effectively. 11 13 12 14 0.72 from 0.71: trunk/hcf/process.d
r642 r813 256 256 } 257 257 258 /** Exception to be thrown when a command called dies */ 259 class ProcessDeathException : Exception { 260 this(char[] smsg) 261 { 262 super(smsg); 263 } 264 } 265 258 266 /** system + guarantee success */ 259 267 void systemOrDie(char[] cmd) … … 267 275 if(p!=-1) cmd=cmd[0..p]; 268 276 writefln("Command " ~ cmd ~ " returned with code ", res, ", aborting."); 269 exit(1);277 throw new ProcessDeathException("Command failed, aborting."); 270 278 } 271 279 } … … 314 322 if(p!=-1) cmd=cmd[0..p]; 315 323 writefln("Command " ~ cmd ~ " returned with code ", res, ", aborting."); 316 exit(1);324 throw new ProcessDeathException("Command failed, aborting."); 317 325 } 318 326 } trunk/sss/conf.d
r807 r813 847 847 } 848 848 849 /** Exception to be thrown when a scripted step fails */ 850 class HookException : Exception { 851 this(char[] smsg) 852 { 853 super(smsg); 854 } 855 } 856 849 857 /** Perform a pre- or post- script step. Returns a list of installed files (if 850 858 * applicable) */ … … 879 887 cmd[0..6] == "error ") { 880 888 writefln("ERROR: %s", cmd[6..$]); 881 exit(1);889 throw new HookException("error hook encountered."); 882 890 883 891 } else if (cmd.length > 8 &&
