Buggy code:
public class ExportMovieDialog implements ActionListener { private JHVJPXView timedJHVJPXView = null ; private GL3DComponentView mainComponentView = null ; private long speed = 0 ; private IMediaWriter writer ; private MovieFileFilter selectedOutputFormat = MP4 . getMovieFilter ( ) ; private String txtTargetFile ; private ExportMovieDialog . ProgressDialog progressDialog ; private boolean started = false ; private String directory ; private String filename ; private Timer timer ; private int i = 0 ; private FileOutputStream fileOutputStream ; private ZipOutputStream zipOutputStream ; private static final String SETTING_MOVIE_EXPORT_LAST_DIRECTORY = "export.movie.last.directory" ; private static final String SETTING_IMG_WIDTH = "export.movie.image.width" ; private static final String SETTING_IMG_HEIGHT = "export.movie.image.height" ; private static final String SETTING_TEXT = "export.movie.text" ; private boolean textEnabled ; private int imageWidth ; private int imageHeight ; private ExportMovieDialog exportMovieDialog ; public ExportMovieDialog ( ) { } private int openFileChooser ( ) { } private void loadSettings ( ) { } private void initExportMovie ( ) { } private void exportMovie ( ) { if ( ! ( started ) ) stopExportMovie ( ) ; else { timedJHVJPXView . setCurrentFrame ( i , new ChangeEvent ( ) , true ) ; for ( GL3DImageLayer layer : mainComponentView . getAdapter ( GL3DSceneGraphView . class ) . getLayers ( ) . getLayers ( ) ) { JHVJPXView jhvjpxView = layer . getImageTextureView ( ) . getAdapter ( JHVJPXView . class ) ; if ( ( jhvjpxView . getCurrentFrameNumber ( ) ) > ( jhvjpxView . getImageCacheStatus ( ) . getImageCachedCompletelyUntil ( ) ) ) { <START_BUG> this . progressDialog . setDescription ( "Load<seq2seq4repair_space>image<seq2seq4repair_space>data" ) ; <END_BUG> return ; } } ArrayList < String > descriptions = null ; if ( textEnabled ) { GL3DSceneGraphView scenegraphView = GuiState3DWCS . mainComponentView . getAdapter ( GL3DSceneGraphView . class ) ; descriptions = new ArrayList < String > ( ) ; int counter = 0 ; for ( GL3DImageLayer layer : scenegraphView . getLayers ( ) . getLayers ( ) ) { if ( ! ( layer . isDrawBitOn ( Hidden ) ) ) { descriptions . add ( ( ( ( LayersModel . getSingletonInstance ( ) . getDescriptor ( counter ) . title ) + "<seq2seq4repair_space>-<seq2seq4repair_space>" ) + ( LayersModel . getSingletonInstance ( ) . getDescriptor ( counter ) . timestamp . replaceAll ( "<seq2seq4repair_space>" , "<seq2seq4repair_space>-<seq2seq4repair_space>" ) ) ) ) ; } counter ++ ; } } this . progressDialog . setDescription ( "Rendering<seq2seq4repair_space>images" ) ; BufferedImage bufferedImage = mainComponentView . getBufferedImage ( imageWidth , imageHeight , descriptions ) ; progressDialog . updateProgressBar ( i ) ; if ( ( this . selectedOutputFormat . isMovieFile ( ) ) && ( started ) ) { writer . encodeVideo ( 0 , bufferedImage , ( ( speed ) * ( i ) ) , TimeUnit . MILLISECONDS ) ; } else if ( ( this . selectedOutputFormat . isCompressedFile ( ) ) && ( started ) ) { String number = String . format ( "%04d" , i ) ; try { zipOutputStream . putNextEntry ( new ZipEntry ( ( ( ( ( ( ( filename ) + "//" ) + ( this . filename ) ) + "-" ) + number ) + ( this . selectedOutputFormat . getInnerMovieFilter ( ) . getExtension ( ) ) ) ) ) ; ImageIO . write ( bufferedImage , this . selectedOutputFormat . getInnerMovieFilter ( ) . getFileType ( ) , zipOutputStream ) ; zipOutputStream . closeEntry ( ) ; } catch ( IOException e ) { e . printStackTrace ( ) ; } } else if ( ( this . selectedOutputFormat . isImageFile ( ) ) && ( started ) ) { String number = String . format ( "%04d" , i ) ; try { ImageIO . write ( bufferedImage , selectedOutputFormat . getFileType ( ) , new File ( ( ( ( ( ( ( directory ) + ( this . filename ) ) + ( this . filename ) ) + "-" ) + number ) + ( this . selectedOutputFormat . getExtension ( ) ) ) ) ) ; } catch ( IOException e ) { e . printStackTrace ( ) ; } } ( i ) ++ ; if ( ( i ) > ( timedJHVJPXView . getMaximumFrameNumber ( ) ) ) { started = false ; stopExportMovie ( ) ; } } } public void stopExportMovie ( ) { } public void cancelMovie ( ) { } public static class ProgressDialog extends JDialog implements ActionListener { private static final long serialVersionUID = - 488930636247393662L ; private JProgressBar progressBar ; private JButton btnCancel ; private JLabel lblDescription ; private ExportMovieDialog exportMovieDialog ; private final JPanel contentPanel = new JPanel ( ) ; public ProgressDialog ( ExportMovieDialog exportMovieDialog ) { } public void setMaximumOfProgressBar ( int maximum ) { } public void updateProgressBar ( int value ) { } public void setDescription ( String description ) { } @ Override public void dispose ( ) { } @ Override public void actionPerformed ( ActionEvent ae ) { } } @ Override public void actionPerformed ( ActionEvent arg0 ) { } }

Fix:
this . progressDialog . setDescription ( "Loading<seq2seq4repair_space>image<seq2seq4repair_space>data" ) ;