emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Nicolas Goaziou <mail@nicolasgoaziou.fr>
To: Oleg Sivokon <olegsivokon@gmail.com>
Cc: emacs-orgmode@gnu.org
Subject: Re: Bug: org-babel-ref-parse needs to set current buffer to the buffer of the marker [8.2.2 (release_8.2.2-188-gc57372 @ /home/wvxvw/Projects/org-mode/lisp/)]
Date: Fri, 08 May 2015 10:24:35 +0200	[thread overview]
Message-ID: <87oalvh3y4.fsf@nicolasgoaziou.fr> (raw)
In-Reply-To: <87zj5g2idd.fsf@gmail.com> (Oleg Sivokon's message of "Fri, 08 May 2015 00:22:06 +0300")

Oleg Sivokon <olegsivokon@gmail.com> writes:

> Please let me know if I didn't export the patch properly (patch
> attached).

Thank you. Some comments follow.

> From fdc1409602b48ba5f4cd1b5be6264d8311b8b11c Mon Sep 17 00:00:00 2001
> From: wvxvw <olegsivokon@gmail.com>
> Date: Fri, 8 May 2015 00:14:11 +0300
> Subject: [PATCH] Making sure the buffer pointed by
>  org-babel-current-src-block-location is active when moving to the source
>  block.

The summary line should be shorter.  Also you need to add a reference to
the function being modified, e.g.,

* list/ob-ref.el (org-babel-ref-parse): Make sure the buffer pointed by...

Eventually, you need to add "TINYCHANGE" string at the end of the commit
message if you haven't signed FSF papers.  See
<http://orgmode.org/worg/org-contribute.html#orgheadline8> for details.

>  			   (goto-char (if (markerp org-babel-current-src-block-location)
> -					  (marker-position org-babel-current-src-block-location)
> +					  (with-current-buffer
> +					      (marker-buffer org-babel-current-src-block-location)
> +					    (marker-position org-babel-current-src-block-location))
>  					org-babel-current-src-block-location)))
>  			 (org-babel-read ref))))

This won't work as `org-babel-read' is not called within the scope of
`with-current-buffer'.

I think it should be something like this:

  (with-current-buffer
      (if (markerp org-babel-current-src-block-location)
          (marker-buffer org-babel-current-src-block-location)
        (current-buffer))
    (save-excursion
      (goto-char org-babel-current-src-block-location)
      (org-babel-read ref)))

Bonus points if you can write a test about it in "test-ob.el".

Regards,

  reply	other threads:[~2015-05-08  8:23 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-05 15:50 Bug: org-babel-ref-parse needs to set current buffer to the buffer of the marker [8.2.2 (release_8.2.2-188-gc57372 @ /home/wvxvw/Projects/org-mode/lisp/)] Oleg Sivokon
2015-05-07 20:04 ` Nicolas Goaziou
2015-05-07 21:22   ` Oleg Sivokon
2015-05-08  8:24     ` Nicolas Goaziou [this message]
2015-05-08 13:18       ` Oleg Sivokon
2015-05-08 22:08         ` Nicolas Goaziou
2015-05-08 23:01           ` Oleg Sivokon
2015-05-09  9:04             ` Nicolas Goaziou

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87oalvh3y4.fsf@nicolasgoaziou.fr \
    --to=mail@nicolasgoaziou.fr \
    --cc=emacs-orgmode@gnu.org \
    --cc=olegsivokon@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).