                 return if not confirmed
                 incremental = $('.vex #incremental-bounce').is ':checked'
                 duration = $('.vex #bounce-expiration').val()
-                @bounce(incremental, duration).done callback
+
+                if !duration or (duration and @_validateDuration(duration, @promptBounce))
+                    @bounce(incremental, duration).done callback
 
     promptExitCooldown: (callback) =>
         vex.dialog.confirm

                return unless data
                bounce = $('.vex #bounce').is ':checked'
                incremental = $('.vex #incremental-bounce').is ':checked'
                @scale(data).done =>
                    if bounce
                        @bounce(incremental).done callback
                    else
                        callback
        

    promptUnpause: (callback) =>
        vex.dialog.confirm

            return juration.parse(duration) * 1000
        catch e
            console.error "Error parsing duration input: #{duration}"
            return null

    ###
    promptX opens a dialog asking the user to confirm an action and then does it
