comparison d2/qtd/QtdObject.d @ 383:bd7f485e3573

More debug fixes
author Max Samukha <maxter@spambox.com>
date Mon, 12 Jul 2010 22:50:58 +0300
parents 1d56b2a2e10c
children 7dddafad5a20
comparison
equal deleted inserted replaced
382:1d56b2a2e10c 383:bd7f485e3573
212 mixin(debugHandler("onWrapperDestruction", "this")); 212 mixin(debugHandler("onWrapperDestruction", "this"));
213 213
214 if (!_flags.nativeDeleteDisabled) 214 if (!_flags.nativeDeleteDisabled)
215 { 215 {
216 // avoid deleting D object twice. 216 // avoid deleting D object twice.
217
218 _flags.wrapperDeleteDisabled = true; 217 _flags.wrapperDeleteDisabled = true;
219 qtdDeleteNative; 218 qtdDeleteNative;
220 219
221 mixin(debugHandler("onNativeDeleted", "this")); 220 mixin(debugHandler("onNativeDeleted", "this"));
222 } 221 }
317 316
318 mixin(qtdExport("void", "QtdObject_delete", "void* dId", 317 mixin(qtdExport("void", "QtdObject_delete", "void* dId",
319 q{ 318 q{
320 auto obj = cast(QtdObject)dId; 319 auto obj = cast(QtdObject)dId;
321 320
322 mixin(debugHandler("onDeletingWrapperFromNative", "dId")); 321 mixin(debugHandler("onDeletingWrapperFromNative", "obj"));
323 322
324 if (!obj._flags.wrapperDeleteDisabled) 323 if (!obj._flags.wrapperDeleteDisabled)
325 { 324 {
326 // Avoid deleting native object twice 325 // Avoid deleting native object twice
327 obj._flags.nativeDeleteDisabled = true; 326 obj._flags.nativeDeleteDisabled = true;