I can't reproduce this anymore on 28.1 either: > (defun +ivy--always-return-zero-exit-code-a (fn &rest args) > (let ((process-exit-status-orig > (symbol-function 'process-exit-status))) > (cl-letf* (((symbol-function 'process-exit-status) > (lambda (_proc) > (let ((code (funcall process-exit-status-orig _proc))) > (if (/= code 0) 0 code))))) > (apply fn args)))) > (defun my-test-exit-status-advised () > (my-test-exit-status)) > (defun my-test-exit-status () > (let ((proc (start-process "my-test-exit-status" nil "false"))) > (while (not (eq (process-status proc) 'exit)) > (sit-for 0.05)) > (process-exit-status proc))) > (advice-add #'my-test-exit-status-advised :around #'+ivy--always-return-zero-exit-code-a) > (my-test-exit-status-advised) ; => 0 > (my-test-exit-status) ; => 1 So let's close this. On Mon, Sep 12, 2022 at 4:49 AM Lars Ingebrigtsen wrote: > Robert Irelan writes: > > > (defun +ivy--always-return-zero-exit-code-a (fn &rest args) > > (let ((process-exit-status-orig > > (symbol-function 'process-exit-status))) > > (cl-letf* (((symbol-function 'process-exit-status) > > (lambda (_proc) > > (let ((code (funcall process-exit-status-orig > _proc))) > > (if (= code 2) 0 code))))) > > (apply fn args))) > > (advice-add #'counsel-rg :around > #'+ivy--always-return-zero-exit-code-a) > > (I'm going through old bug reports that unfortunately weren't resolved > at the time.) > > Andrea was apparently unable to reproduce the problem here on the > current "master" branch. Robert, would it be possible for you to test > this on that branch and see whether this works better there? > -- Robert Irelan rirelan@gmail.com