In commit a67f79 you changed the call to drawData to pass the offscreen canvas AND the visible canvas. However, in the currently commited source code drawData still only accepts the visible canvas and the method signature does not match how it is being called. Consequently all the builds since this commit are broken.
Did you forget to commit anything? Is this tested at all? Is anyone actually using it?