TextField's getBounds madness

I’ve run into a very strange problem while developing my scrollbar. It’s coming from my dependence on the getBounds method, more specifically when calling object.getBounds(object).

That is vital for my current piece of code because it returns the difference between the registration point (the values returned when you call “object.x” and “object.y”) and the actual, visible position (the one you get with object.getBounds(object.parent).x, for example). I use it for setting the position of something without ever having to worry about it’s registration point, and it used to work pretty well.

Until I hit a TextField. Now, let’s make a test. Fire up Flash, create a new AS3 file and draw a TextField on the stage with the Text Tool. Any dynamic field will do, with or without borders and with any size. Now give it the name of “field” and run the following code from the first frame:

trace(field.y == field.getBounds(this).y) // true
trace(field.getBounds(field).y) // -2

The first line tells us that the bounds are exactly over the object’s registration point.
But the second one says that the bounds start at y=-2 inside the object. That’s a contradiction.

Sprites are fine: as long as the first line returns true, the second will be 0, which is expected.

Bug? Misunderstanding? Feature misuse from my part? What do you say?

EDIT:
This doesn’t happens with TextFields created via code.