On Jan 3, 2010, at 7:42 PM, Carsten Dominik wrote:
Hi David,
this is a weird bug. I'd say it is a bug in `format', which does
something
bad with properties because a format like "%.30s" is used to shorten
a string
while properties in that string exist beyond that shortened part.
In fact, here is a simple test that reproduces this problem:
(format "%.10s" (concat "1234567890aaaa"
(propertize "12345678901234567890" 'xxx 25)))
The problem only shows if the start of the propertized section is
already
outsinde the width of the "%.10s" format field. The following works
fine
(only change: make the unpropertized part in the concat shorter than
10 characters:
(format "%.10s" (concat "123456789"
(propertize "12345678901234567890" 'xxx 25)))
Can I ask you to submit this as a bug report to Emacs?
- Carsten
On Jan 3, 2010, at 7:11 PM, David Maus wrote:
At Sun, 3 Jan 2010 14:40:58 +0100,
Carsten Dominik wrote:
Hi David,
could you please provide a full backtrace for this bug?
Backtrace attached.
My first guess on why it happens was wrong, as expected: There are
messages with encoded umlauts that do not cause this error.
This would fit with my observation, if the propertized part is not
outside the
part that gets formatted into the string.
Would you like to try to make a patch which does remove the text
properties for this case?
- Carsten
Regards
-- David
--
OpenPGP... 0x99ADB83B5A4478E6
Jabber.... dmj...@jabber.org
Email..... maus.da...@gmail.com
ICQ....... 241051416
Debugger entered--Lisp error: (args-out-of-range 30 45)
format("%.30s" #("Online-Pornografie: China nimmt Tausende
Verdächtige fest" 45 57 (charset latin-iso8859-1)))
(setq rpl (format (concat ... "s") (cdr e)))
(while (string-match re string) (setq rpl (format ... ...)) (setq
string (replace-match rpl t t string)))
(while (setq e (pop table)) (setq re (concat "%-?[0-9.]*" ...))
(while (string-match re string) (setq rpl ...) (setq string ...)))
(let ((case-fold-search nil) e re rpl) (while (setq e ...) (setq
re ...) (while ... ... ...)) string)
org-replace-escapes("Email from %f: %.30s" (("%c") ("%F" . "rss-
hash (SpiegelSchlagzeilen)") ("%f" . "SpiegelSchlagzeilen") ("%T")
("%t" . "?") ("%s" . #("Online-Pornografie: China nimmt Tausende
Verdächtige fest" 45 57 ...)) ("%m" .
"<c5870b37264417e9a721fc15fd537745.spiegelschlagzei...@rss-hash>")))
(let* ((p org-store-link-plist) (to ...) (from ...) (table ...))
(when (string-match "%c" fmt) (if ... ... ...)) (org-replace-
escapes fmt table))
org-email-link-description()
org-wl-store-link()
run-hook-with-args-until-success(org-wl-store-link)
(cond ((run-hook-with-args-until-success ...) (setq link ...
desc ...)) ((equal ... "*Org Edit Src Example*")
(let ... ... ... ... ... ... ... ...)) ((equal ... ...)
(let ... ...)) ((eq major-mode ...) (let ... ... ...)) ((eq major-
mode ...) (setq cpltxt ... link ...) (org-store-link-props :type
"w3" :url ...)) ((eq major-mode ...) (setq cpltxt ... link ...)
(org-store-link-props :type "w3m" :url ...)) ((setq search ...)
(setq link ...) (setq cpltxt ...)) ((eq major-mode ...) (setq
cpltxt ... link ...) (org-store-link-props :type "image" :file
buffer-file-name)) ((eq major-mode ...) (setq cpltxt ... link ...))
((and buffer-file-name ...) (setq custom-id ...)
(cond ... ... ...)) ((buffer-file-name ...) (setq cpltxt ...)
(when ... ... ...) (setq link ...)) ((interactive-p) (error "Cannot
link to a buffer which is not visiting a file")) (t (setq link nil)))
(let ((outline-regexp ...) link cpltxt desc description search txt
custom-id) (cond (... ...) (... ...) (... ...) (... ...)
(... ... ...) (... ... ...) (... ... ...) (... ... ...) (... ...)
(... ... ...) (... ... ... ...) (... ...) (t ...)) (if (consp link)
(setq cpltxt ... link ...)) (setq link (or link cpltxt) desc (or
desc cpltxt)) (if (equal desc "NONE") (setq desc nil)) (if (and ...
link) (progn ... ... ...) (and link ...)))
org-store-link(nil)
call-interactively(org-store-link nil nil)
- Carsten
- Carsten
_______________________________________________
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode