mbostock/d3 — pull request #2128 by mgold (2014-11-25 04:14:58+00:00)
Title: Zoom behavior: clip scale to scaleExtent

Currently, it is possible to manually set a scale value outside a zoom behavior's scaleExtent.

````js
var zoom = d3.behavior.zoom();
zoom.scaleExtent();
> [0, Infinity]
zoom.scale(-1);
zoom.scale();
> -1
zoom.scaleExtent();
> [0, Infinity]
````

This seems broken to me. If you disagree, fine, close the PR. There's already a clipping function `scaleTo` so we just call that.