summaryrefslogtreecommitdiff
path: root/amiga/object.c
diff options
context:
space:
mode:
authorChris Young <chris@unsatisfactorysoftware.co.uk>2011-02-16 21:29:39 +0000
committerChris Young <chris@unsatisfactorysoftware.co.uk>2011-02-16 21:29:39 +0000
commit6bced73998312f7ddb68f5d572fef2214ddbe4f4 (patch)
treed1dc490184496792d09025aa13cfb9b3f9d384d1 /amiga/object.c
parentbbdb7cd440accc92fd9bfaf8c4821bba2844e3e5 (diff)
downloadnetsurf-6bced73998312f7ddb68f5d572fef2214ddbe4f4.tar.gz
netsurf-6bced73998312f7ddb68f5d572fef2214ddbe4f4.tar.bz2
Modify scheduler to use a binary heap (using libpbl).
Scheduled events are now in event time order, so schedule_run simply takes the top event off the heap and runs it (if we're polling, rather than having received a signal that the next event is due to be run, we check first that we have passed the scheduled time). This should provide performance benefits as we are no longer trawling the entire list of scheduled events (potentially hundreds) every time an event is signalled or the schedule list is polled. svn path=/trunk/netsurf/; revision=11703
Diffstat (limited to 'amiga/object.c')
-rwxr-xr-xamiga/object.c4
1 files changed, 0 insertions, 4 deletions
diff --git a/amiga/object.c b/amiga/object.c
index 93094cbda..cb5adaa00 100755
--- a/amiga/object.c
+++ b/amiga/object.c
@@ -77,11 +77,7 @@ void FreeObjList(struct MinList *objlist)
do
{
nnode=(struct nsObject *)GetSucc((struct Node *)node);
- if(node->Type == AMINS_CALLBACK)
- ami_remove_timer_event((struct nscallback *)node->objstruct);
-
DelObject(node);
-
}while(node=nnode);
FreeVec(objlist);