[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [32853] branches/particles-2010/source/ blender/nodes/intern/simulation/SIM_intern.c: Fixed memory bug that was killing performance, events were not freed correctly.
Lukas Toenne
lukas.toenne at googlemail.com
Wed Nov 3 09:55:14 CET 2010
Revision: 32853
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=32853
Author: lukastoenne
Date: 2010-11-03 09:55:14 +0100 (Wed, 03 Nov 2010)
Log Message:
-----------
Fixed memory bug that was killing performance, events were not freed correctly.
Modified Paths:
--------------
branches/particles-2010/source/blender/nodes/intern/simulation/SIM_intern.c
Modified: branches/particles-2010/source/blender/nodes/intern/simulation/SIM_intern.c
===================================================================
--- branches/particles-2010/source/blender/nodes/intern/simulation/SIM_intern.c 2010-11-03 08:46:14 UTC (rev 32852)
+++ branches/particles-2010/source/blender/nodes/intern/simulation/SIM_intern.c 2010-11-03 08:55:14 UTC (rev 32853)
@@ -103,7 +103,7 @@
void sim_event_init(SimEvent *event)
{
event->status = SIM_QUEUED;
- event->refcount = 0;
+ event->refcount = 1;
}
void sim_event_retain(SimEvent *event)
@@ -114,7 +114,7 @@
void sim_event_release(SimEvent *event)
{
--event->refcount;
- if (event->refcount <= 0) {
+ if (event->refcount == 0) {
MEM_freeN(event);
}
}
@@ -166,7 +166,6 @@
job->event = MEM_callocN(sizeof(SimEvent), "SimEvent");
sim_event_init(job->event);
- sim_event_retain(job->event);
if (sim_eventlist_status(&job->wait_events)==SIM_COMPLETE)
job->event->status = SIM_SUBMITTED;
else
More information about the Bf-blender-cvs
mailing list