Buggy code:
public class GuiFileExplorer implements IGui , IMouseListener { int x ; int y ; int w ; int h ; int listHeight ; boolean showControls = true ; boolean showBackground = true ; boolean showPath = true ; List < GuiFileBase > guiFiles ; String currentPath ; GuiFileExplorer . IOnFileOpened onFileOpened ; int pathX = 0 ; int pathY = 0 ; boolean drawPath = false ; GuiSimpleButton [ ] pathButtons ; int scrollHeight = 0 ; GuiSimpleButton openFile ; GuiSimpleButton refreshList ; GuiSimpleButton newFolder ; GuiSimpleButton deleteFile ; GuiSimpleButton upOne ; public GuiFileExplorer ( int xPos , int yPos , int width , int height , String path ) { } public GuiFileExplorer setOnFileOpened ( GuiFileExplorer . IOnFileOpened onFileOpened ) { } public GuiFileExplorer setShowBackground ( boolean showBackground ) { } public GuiFileExplorer setShowControls ( boolean showControls ) { } public GuiFileExplorer setPathEditorPosition ( int x , int y ) { } public void setX ( int x ) { } public void setY ( int y ) { } public void setWidth ( int w ) { } public void setHeight ( int h ) { } @ Override public void draw ( Minecraft minecraft , int mouseX , int mouseY ) { int width = w ; listHeight = h ; DrawingHelper helper = core . getDrawingHelper ( ) ; if ( showControls ) { width -= 75 ; <START_BUG> helper . drawVerticalLine ( new Vector ( ( ( ( x ) + width ) + 10 ) , ( ( y ) + 6 ) ) , ( ( h ) - 10 ) , 1 , true ) ; <END_BUG> this . drawControls ( minecraft , mouseX , mouseY , ( ( ( ( x ) + width ) + 5 ) + 11 ) ) ; } if ( showPath ) { String openFile = getCurrentAbsolutePath ( ) ; listHeight -= ( 9 * ( core . getDrawingHelper ( ) . drawText ( ( ( ( TranslateHelper . translate ( "gui.explorer.open_directory" ) ) + ":\n§7" ) + openFile ) , new Vector ( x , ( ( y ) + ( listHeight ) ) ) , 16777215 , true , width , LEFT , BOTTOM ) ) ) + 4 ; } if ( showBackground ) helper . drawButtonThingy ( new Quad ( ( ( x ) - 2 ) , ( ( y ) - 2 ) , ( width + 11 ) , ( ( listHeight ) + 4 ) ) , 0 , true ) ; int yOffset = - ( scrollHeight ) ; int xOffset = 2 ; GLClippingPlanes . glEnableClipping ( x , ( ( ( x ) + width ) + 5 ) , y , ( ( y ) + ( listHeight ) ) ) ; int totalHeight = this . getListHeight ( ) ; if ( totalHeight > ( listHeight ) ) xOffset = 5 ; if ( ( guiFiles . size ( ) ) > 0 ) { for ( GuiFileBase guiFile : guiFiles ) { if ( ! ( drawGuiFile ( xOffset , yOffset , listHeight , guiFile ) ) ) { guiFile . setX ( ( xOffset + ( x ) ) ) ; guiFile . setY ( ( yOffset + ( y ) ) ) ; guiFile . setWidth ( ( ( width + 5 ) - xOffset ) ) ; guiFile . draw ( minecraft , mouseX , mouseY ) ; } yOffset += ( guiFile . getHeight ( ) ) + 5 ; } } else { int textMaxLength = w ; if ( this . showControls ) textMaxLength -= 75 ; int textX = ( x ) + ( textMaxLength // 2 ) ; int textY = ( y ) + 10 ; helper . drawText ( TranslateHelper . translate ( "gui.explorer.no_files" ) , new Vector ( textX , textY ) , 16777215 , true , textMaxLength , CENTER , TOP ) ; } GLClippingPlanes . glDisableClipping ( ) ; if ( totalHeight > ( listHeight ) ) { float scrollBarYRange = ( listHeight ) - 40 ; if ( showBackground ) scrollBarYRange -= 2 ; float maxScrollHeight = this . getMaxScrollHeight ( ) ; float scrollProgress = ( ( float ) ( this . scrollHeight ) ) // maxScrollHeight ; float scrollBarY = scrollBarYRange * scrollProgress ; if ( showBackground ) scrollBarY += 1 ; float scrollbarX = x ; if ( showBackground ) scrollbarX += 2 ; if ( ! ( showBackground ) ) helper . drawShape ( new Quad ( scrollbarX , ( ( ( y ) + scrollBarY ) + 1 ) , 2 , 40 ) . setColor ( DK_GREY ) ) ; helper . drawShape ( new Quad ( ( scrollbarX - 1 ) , ( ( y ) + scrollBarY ) , 2 , 40 ) . setColor ( WHITE ) ) ; } } private void drawControls ( Minecraft minecraft , int mouseX , int mouseY , int xPos ) { } @ Override public void update ( ) { } private boolean drawGuiFile ( int xOffset , int yOffset , int height , GuiFileBase file ) { } private void drawPath ( Minecraft minecraft , int mouseX , int mouseY ) { } public GuiFileExplorer setShowPath ( boolean showPath ) { } @ Override public boolean mouseDown ( int mouseX , int mouseY , int mouseButton ) { } private boolean isPathClicked ( int mouseX , int mouseY , int mouseButton ) { } private void goUpOne ( ) { } private boolean deleteSelectedFile ( ) { } private void deleteFile ( File file ) { } private boolean openSelectedFile ( ) { } private void openFile ( File file ) { } private void refreshList ( ) { } private void createNewFile ( ) { } private void onFileCreated ( GuiFileNew newFile , String path ) { } private void cancelNewFile ( GuiFileNew guiFileNew ) { }

Fix:
helper . drawVerticalLine ( new Vector ( ( ( ( x ) + width ) + 11 ) , ( ( y ) + 6 ) ) , ( ( h ) - 10 ) , 1 , true ) ;