src/output/driver.c: Change engine_stack from an array to a list.
authorJohn Darrington <john@darrington.wattle.id.au>
Sun, 28 Apr 2019 13:09:02 +0000 (15:09 +0200)
committerJohn Darrington <john@darrington.wattle.id.au>
Sun, 28 Apr 2019 13:09:02 +0000 (15:09 +0200)
commit31127c303d92ce811f1dd365af83644266e4fd88
tree6e2aed3d3842877db44d87816149084609ee2e18
parent7a171e2894441351b27224344ba79461411dc94c
src/output/driver.c:  Change engine_stack from an array to a list.

The structure called engine_stack was formerly implemented as a heap
based array allocated with realloc.   However when realloc moves data
it makes only shallow copies and does not copy referand of pointers.
This was causing crashes under certain circumstances.

Rather than trying to fix this, this change re-implements engine_stack
using the linked list structure from ll.h
src/output/driver.c