IE6 errors out if you resize the listview to a size smaller then the containing items. The following fixes it:


Code:
/* Fix bug in Ext.ListView with ie6 */
Ext.override(Ext.ListView, {
    onResize : function(w, h){
        var bd = this.innerBody.dom;
        var hd = this.innerHd.dom
        if(!bd){
            return;
        }
        var bdp = bd.parentNode;
        if(typeof w == 'number'){
            var sw = w - this.scrollOffset;
            if(this.reserveScrollOffset || ((bdp.offsetWidth - bdp.clientWidth) > 10)){
                bd.style.width = sw + 'px';
                hd.style.width = sw + 'px';
            }else{
                bd.style.width = w + 'px';
                hd.style.width = w + 'px';
                setTimeout(function(){
                    if((bdp.offsetWidth - bdp.clientWidth) > 10){
                        bd.style.width = sw + 'px';
                        hd.style.width = sw + 'px';
                    }
                }, 10);
            }
        }
        
        /* If height is negative IE6 will give an error 'invalid argument' */
        if(typeof h == 'number'){
            var height = h - hd.parentNode.offsetHeight;
            if (height < 0) {
                height = 0;
            }
            bdp.style.height = height + 'px';
        }
    }
});
The problem is that setting bdp.style.height to a negative height results in an error