Emacs 24.3.1 & howm 1.4.2 で空のファイルを削除するのに、
どこかで見かけた次の設定をしてます。

(if (not (memq 'delete-file-if-no-contents after-save-hook))
(setq after-save-hook
(cons 'delete-file-if-no-contents after-save-hook)))
(defun delete-file-if-no-contents ()
(when (and
(buffer-file-name (current-buffer))
(string-match "\\.howm" (buffer-file-name (current-buffer)))
(= (point-min) (point-max)))
(delete-file
(buffer-file-name (current-buffer)))))

~/.howm-keys がないと自動的に再生成されますが、
そのときに繰り返し delete-file-if-no-contents が呼ばれ、
次のようなメッセージが出て生成に失敗します。

Generating ~/.howm-keys ...
let*: Lisp nesting exceeds `max-lisp-eval-depth'

上の設定がなければ問題ないようですが、
どのように対処するべきでしょうか?