diff --git a/src/java/com/threerings/getdown/launcher/Getdown.java b/src/java/com/threerings/getdown/launcher/Getdown.java index bbeb37a..b82084a 100644 --- a/src/java/com/threerings/getdown/launcher/Getdown.java +++ b/src/java/com/threerings/getdown/launcher/Getdown.java @@ -758,7 +758,12 @@ public abstract class Getdown extends Thread _container = createContainer(); _status = new StatusPanel(_msgs); _container.add(_status, BorderLayout.CENTER); - _background = getBackground(); + } + RotatingBackgrounds newBackgrounds = getBackground(); + if (_background == null || newBackgrounds.getNumImages() > 0) { + // Leave the old _background in place if there is an ond one to leave in place + // and the new getdown.txt didn't yield any images. + _background = newBackgrounds; } _status.init(_ifc, _background, getProgressImage()); showContainer(); diff --git a/src/java/com/threerings/getdown/launcher/RotatingBackgrounds.java b/src/java/com/threerings/getdown/launcher/RotatingBackgrounds.java index 33994b4..48ebd8e 100644 --- a/src/java/com/threerings/getdown/launcher/RotatingBackgrounds.java +++ b/src/java/com/threerings/getdown/launcher/RotatingBackgrounds.java @@ -75,6 +75,13 @@ public class RotatingBackgrounds return images[current]; } + /** + * @return the number of images in this RotatingBackgrounds + */ + public int getNumImages() { + return images.length; + } + protected void makeEmpty () { percentages = new int[] {};