I have a flex list, nothing fancy:
<s:List id="list" left="0" right="0" top="0" bottom="0" borderVisible="false"
dataProvider="{data}" labelField="1" textAlign="left"
itemRenderer="MXML.ItemRenderers.ListItemRenderer" horizontalScrollPolicy="off">
<s:layout>
<s:VerticalLayout horizontalAlign="left"/>
</s:layout>
</s:List>
The following ActionScript code snippets are used to automatically scroll to the bottom of the list when the content does not fit in the visible area. Note that only 1 of these code snippets is used at any given time, but they both have the same effect.
Snippet 1:
list.validateNow();
list.ensureIndexIsVisible(data.length-1);
Snippet 2:
list.validateNow();
list.layout.verticalScrollPosition += list.layout.getVerticalScrollPositionDelta(NavigationUnit.END);
The problem is that these snippets do not scroll completely to the bottom of the list. To illustrate this, I have attached an image: the result on the list after the execution of the above snippets (they both give the same result).

Any help with this problem would be appreciated.
Scrolling to the bottom of a List can be tricky especially when renderers are of different heights, see this blog post for an example of how to accomplish this: http://flexponential.com/2011/02/13/scrolling-to-the-bottom-of-a-spark-list/