There's a similar question already, but there the issue is resolved as not being due to getImageData itself. This is definitely an issue with getImageData, or else I'm badly misunderstanding something.
The following code consumes about half a meg of memory per second in Chrome 23.0 (Linux), and also leaks, albeit more slowly, on Firefox. Assigning to a local or global variable doesn't help.
Am I missing something? Is this a bug?
<html>
<head>
<script>
function tick() {
document.getElementById("canvas1").getContext('2d').getImageData(0, 0, 300, 150);
}
setInterval(tick, 10);
</script>
</head>
<body>
<canvas id="canvas1" />
</body>
</html>