pallet / ritz

SWANK and nREPL servers for clojure providing JPDA based debuggers
318 stars 33 forks source link

Possible bugs related to "nrepl-break-on-exception" #81

Closed kkspeed closed 11 years ago

kkspeed commented 11 years ago

Hello, I cannot disable "break-on-exception" once its activated. So I looked into the code and found the following things interesting:

The first one is inside nrepl-ritz.el where nrepl-break-on-exception is defined as: (defun nrepl-ritz-break-on-exception (flag) "Set break on exception. Argument FLAG is used to enable or disable." (interactive "p") when using lower case "p", flag will be either 1 or -1 and in other words, always evaluate to t. I think the upper case "P" is more appropriate. This may be the same thing you fixed for commit 2ed71da91eeeffed9c659527e347cda6601de902 for slime-ritz, but it remains unfixed in nrepl-ritz.

The second bug is inside ritz/nrepl/debug_eval.clj in "debug-eval" function. The line: (= "break-on-exception" op) (ritz.nrepl.debug/break-on-exception connection (or (:enable msg) true)) Isn't the (or (:enable msg) true)) always evaluated to true? And thus, whatever the msg is, the break-on-exception is never going to be disabled.

Hope this helps :)