Deferred.cpp (pymol-open-source-2.2.0) | : | Deferred.cpp (pymol-open-source-2.3.0) | ||
---|---|---|---|---|
#include "Deferred.h" | #include "Deferred.h" | |||
#include "MemoryDebug.h" | #include "MemoryDebug.h" | |||
void DeferredInit(PyMOLGlobals * G, CDeferred * I) | void CDeferred::exec(){ | |||
{ | if(fn){ | |||
if(I) { | fn(this); | |||
I->G = G; | ||||
} | ||||
} | ||||
void DeferredFree(CDeferred * I) | ||||
{ | ||||
while(I) { | ||||
CDeferred *next = I->next; | ||||
FreeP(I); | ||||
I = next; | ||||
} | ||||
} | ||||
CDeferred *DeferredExec(CDeferred * I) | ||||
{ | ||||
while(I) { /* executes all deferred actions */ | ||||
CDeferred *next = I->next; | ||||
if(I->fn) { | ||||
if(!I->fn(I)) { | ||||
break; | ||||
} | ||||
} | } | |||
FreeP(I); | ||||
I = next; | ||||
} | ||||
return I; | ||||
} | } | |||
End of changes. 2 change blocks. | ||||
28 lines changed or deleted | 3 lines changed or added |