all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [BUG] org-babel-result-to-file failed when buffer is narrowed [9.7 (9.7-??-f7aa8c1 @ c:/Users/yhht/.config/emacs/.local/straight/build-29.0.60/org/)]
@ 2023-07-14  9:14 赵一宇
  2023-07-15  6:56 ` Ihor Radchenko
  0 siblings, 1 reply; 3+ messages in thread
From: 赵一宇 @ 2023-07-14  9:14 UTC (permalink / raw)
  To: emacs-orgmode@gnu.org

[-- Attachment #1: Type: text/plain, Size: 1885 bytes --]

Remember to cover the basics, that is, what you expected to happen and 

what in fact did happen. You don't know how to make a good report? See
     https://orgmode.org/manual/Feedback.html#Feedback
Your bug report will be posted to the Org mailing list.
------------------------------------------------------------------------
When I try to execute ob-block in a narrowed buffer, there seems to have
a error on org-babel-result-to-file, with msg "wrong argument type
stringp, nil"
As I look into this function:
    (defun org-babel-result-to-file (result &optional description type)
      "Convert RESULT into an Org link with optional DESCRIPTION.
    If the `default-directory' is different from the containing
    file's directory then expand relative links.
   
    If the optional TYPE is passed as `attachment' and the path is a
    descendant of the DEFAULT-DIRECTORY, the generated link will be
    specified as an an \"attachment:\" style link."
      (when (stringp result)
        (let* ((result-file-name (expand-file-name result))
               (base-file-name (buffer-file-name (buffer-base-buffer)))
-2-> (base-directory (and buffer-file-name
                                    (file-name-directory base-file-name)))
               (same-directory?
         (and base-file-name
              (not (string= (expand-file-name default-directory)
-1-> (expand-file-name
           base-directory)))))
the error line is marked as -1->
and the reason is at line marked as -2->, which "buffer-file-name" would
be nil when in narrowed buffer. I wonder if "buffer-file-name" should be
"base-file-name" here. Anyway, after that change, this issue go away.
Emacs : GNU Emacs 29.0.60 (build 1, x86_64-w64-mingw32)
 of 2023-03-11
Package: Org mode version 9.7 (9.7-??-f7aa8c1 @ c:/Users/yhht/.config/emacs/.local/straight/build-29.0.60/org/)




| |
赵一宇
|
|
zhyznd@163.com
|

[-- Attachment #2: Type: text/html, Size: 5750 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [BUG] org-babel-result-to-file failed when buffer is narrowed [9.7 (9.7-??-f7aa8c1 @ c:/Users/yhht/.config/emacs/.local/straight/build-29.0.60/org/)]
  2023-07-14  9:14 [BUG] org-babel-result-to-file failed when buffer is narrowed [9.7 (9.7-??-f7aa8c1 @ c:/Users/yhht/.config/emacs/.local/straight/build-29.0.60/org/)] 赵一宇
@ 2023-07-15  6:56 ` Ihor Radchenko
       [not found]   ` <60d56a04.17aa.1896168f62a.Coremail.zhyznd@163.com>
  0 siblings, 1 reply; 3+ messages in thread
From: Ihor Radchenko @ 2023-07-15  6:56 UTC (permalink / raw)
  To: 赵一宇; +Cc: emacs-orgmode@gnu.org

赵一宇 <zhyznd@163.com> writes:

> When I try to execute ob-block in a narrowed buffer, there seems to have
> a error on org-babel-result-to-file, with msg "wrong argument type
> stringp, nil"
> ....
> and the reason is at line marked as -2->, which "buffer-file-name" would
> be nil when in narrowed buffer.

Thanks for the report, but there seems to be either some terminology
issue of a problem with analysis.

Narrowing a buffer (`narrow-to-region') definitely does not change
`buffer-file-name'; it just limits the visible and accessible text in
buffer to a subset of text in buffer.

Maybe you mean indirect buffer? But `buffer-base-buffer' should take
care about this.

So, may you please provide a reproducer, so that I can see and
investigate the problem on my side? See
https://orgmode.org/worg/org-faq.html#bug-reporting

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re:  [BUG] org-babel-result-to-file failed when buffer is narrowed [9.7 (9.7-??-f7aa8c1 @ c:/Users/yhht/.config/emacs/.local/straight/build-29.0.60/org/)]
       [not found]   ` <60d56a04.17aa.1896168f62a.Coremail.zhyznd@163.com>
@ 2023-07-17  9:08     ` Ihor Radchenko
  0 siblings, 0 replies; 3+ messages in thread
From: Ihor Radchenko @ 2023-07-17  9:08 UTC (permalink / raw)
  To: 赵一宇; +Cc: emacs-orgmode

赵一宇 <zhyznd@163.com> writes:

> Yes you're right.
> The problem exists in indirect buffer, not narrowed buffer, in which base-directory is nil in this case. That's why I wonder if 
>            (base-directory (and buffer-file-name
>                                 (file-name-directory base-file-name)))
> should be
>            (base-directory (and base-file-name
>                                 (file-name-directory base-file-name)))
> where base-file-name is non-nil.

Makes sense.
Fixed, on main.
https://git.savannah.gnu.org/cgit/emacs/org-mode.git/commit/?id=c730caf51

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2023-07-17  9:09 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-07-14  9:14 [BUG] org-babel-result-to-file failed when buffer is narrowed [9.7 (9.7-??-f7aa8c1 @ c:/Users/yhht/.config/emacs/.local/straight/build-29.0.60/org/)] 赵一宇
2023-07-15  6:56 ` Ihor Radchenko
     [not found]   ` <60d56a04.17aa.1896168f62a.Coremail.zhyznd@163.com>
2023-07-17  9:08     ` Ihor Radchenko

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.