No leaks
Control (only <canvas>; no JS)
don't store getContext() result
Memory Leaks
var ctx
self.ctx
This script
does not
leak memory.