Re: [O] Patch to fix `org-test-with-temp-text'

2014-04-10 Thread Nicolas Goaziou
Hello,

York Zhao gtdplatf...@gmail.com writes:

 I've just found a bug in `org-test-with-temp-text' and have fixed it. Please
 find attached my patch for the fix. Here's the description from git commit
 message:

Applied. Thank you.


Regards,

-- 
Nicolas Goaziou



[O] Patch to fix `org-test-with-temp-text'

2014-04-09 Thread York Zhao
Hi list,

I've just found a bug in `org-test-with-temp-text' and have fixed it. Please
find attached my patch for the fix. Here's the description from git commit
message:

According to the docstring, if the string point appears in TEXT then the
string point is removed and point is placed there. The problem was that
after string point was removed, the point was *not* placed at the position
of the removed text, rather, it was placed one character before that position
which is wrong. The reason is that Emacs buffer position is a number started
from 1, instead of 0, in other words, the value of `(point-min)' is 1 not 0. The
problem is addressed by adding 1 to the calculated position.

I'm going to report another bug together with a reproducer written as an
org-test. But my test relies on my fix in `org-test-with-temp-text'. Therefor,
I will appreciate it if this patch can be taken care of as soon as possible.

Thank you,

York
From 9bbfc37ab059e923c57eaa99e3a2d81144c80218 Mon Sep 17 00:00:00 2001
From: York Zhao gtdplatf...@gmail.com
Date: Wed, 9 Apr 2014 13:39:16 -0400
Subject: [PATCH] testing/org-test.el (org-test-with-temp-text): Fix point
 position

According to the docstring, if the string point appears in TEXT
then the string point is removed and point is placed there. The
problem was that after string point was removed, the point
was *not* placed at the position of the removed text, rather, it was
placed one character before that position which is wrong. The reason
is that Emacs buffer position is a number started from 1, instead of
0, in other words, the value of `(point-min)' is 1 not 0. The problem
is addressed by adding 1 to the calculated position.

TINYCHANGE
---
 testing/org-test.el | 11 ++-
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/testing/org-test.el b/testing/org-test.el
index 879d45e..983c012 100644
--- a/testing/org-test.el
+++ b/testing/org-test.el
@@ -209,11 +209,12 @@ otherwise place the point at the beginning of the inserted text.
  (with-temp-buffer
(org-mode)
(let ((point (string-match (regexp-quote point) inside-text)))
-	  (if point
-	  (progn (insert (replace-match  nil nil inside-text))
-		 (goto-char (match-beginning 0)))
-	(progn (insert inside-text)
-		   (goto-char (point-min)
+	 (if point
+	 (progn
+	   (insert (replace-match  nil nil inside-text))
+	   (goto-char (1+ (match-beginning 0
+	   (progn (insert inside-text)
+		  (goto-char (point-min)
,@body)))
 (def-edebug-spec org-test-with-temp-text (form body))
 
-- 
1.8.4