Changeset 225
- Timestamp:
- 08/02/06 14:35:05 (2 years ago)
- Files:
-
- trunk/ddl/Linker.d (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/ddl/Linker.d
r224 r225 260 260 public void link(DynamicLibrary lib){ 261 261 ModuleSet moduleSet; 262 Exception exception = null; 262 263 263 264 // link 264 foreach(DynamicModule mod; lib.getModules){ 265 this.link(mod,moduleSet); 266 } 267 // init 265 try{ 266 foreach(DynamicModule mod; lib.getModules){ 267 this.link(mod,moduleSet); 268 } 269 } 270 catch(Exception e){ 271 exception = e; // re-throw in a minute... 272 } 273 274 // init (run whatever initalizers are pending, regardless of failure) 268 275 foreach(mod,moduleInfo; moduleSet){ 269 276 debug debugLog("running %s init at [%0.8X]",mod.getName,cast(void*)moduleInfo); 270 277 this.initModule(moduleInfo,0); 271 278 } 279 280 //re-throw if need be 281 if(exception) throw exception; 272 282 } 273 283
