Consider the following R block, which prints the occurrences of each element in a list, including NAs: #+begin_src R :session :results output :async table(c("ab","ab","c",NA,NA), useNA='always') #+end_src #+RESULTS: : ab c : 2 1 2 Since Org 9.7, it instead prints: #+RESULTS: : ab c < : 2 1 2 The regression happens in commit: e9c288dfaccc2960e5b6889e6aabea700ad4e05a which made the prompt filtering more consistent between `org-babel-comint-with-output' and `org-babel-comint-async-filter'. However, it causes ob-R async session blocks to be over-aggressive in removing the prompt. Note that non-async ob-R blocks don't suffer from this problem, because ob-R let-binds `comint-prompt-regexp' around `org-babel-comint-with-output' (specifically, it adds a beginning-of-line at the front of the regexp). However, I don't see a good way to let-bind this around `org-babel-comint-async-filter'. The best solution I could think of was to define a new buffer-local variable, `org-babel-comint-prompt-regexp-override', which could be used to override `comint-prompt-regexp' for the purpose of filtering. I attach a patch with this solution. Additionally, the regression causes causes misalignment of the output due to removal of indentation. The fix for this is simpler, and involves replacing a call of `org-trim' with `org-babel-chomp'. I'm not sure if my patch is the best solution. But whatever solution we arrive at, I would like to request that it be applied to bugfix branch.