NullPointerExceptionに遭うコード

最近悩んでる問題。

(import '[javax.media.opengl GLCapabilities GLProfile]
        '[com.jogamp.newt.event WindowAdapter]
        '[com.jogamp.newt.opengl GLWindow]
        '[com.jogamp.opengl.util FPSAnimator])
(def window (-> (GLProfile/getDefault) (GLCapabilities.) (GLWindow/create)))
(def animator (FPSAnimator. window 1))
(doto window
  (.addWindowListener
    (proxy [WindowAdapter] []
      (windowDestroyNotify
        [e]
        (.start (proxy [Thread] []
          (run [] (.stop animator) (System/exit 0)))))))
  (.setVisible true))

(.start animator)

これをclj-env-dirの類で起動して、ウィンドウを閉じようとするとFPSAnimator.pauseからNullPointerExceptionが飛んでくる。

addWindowListener部分はあってもなくてもいい。

等価なJavaコードでも同じ例外が起こるので、Clojureの問題ではない。

Ubuntu(X11)とWindowsで確認。

「ここが悪い」「自分の環境では例外が起きない」など、なにか情報があればぜひ教えてください。
よろしくお願いします。