Using saved parent location: http://bzr.savannah.gnu.org/r/emacs/trunk/ Now on revision 103186. ------------------------------------------------------------ revno: 103186 [merge] committer: Kenichi Handa branch nick: trunk timestamp: Tue 2011-02-08 15:57:32 +0900 message: font.c (Ffont_get): Do not cache :otf value. diff: === modified file 'lisp/emacs-lisp/cl-loaddefs.el' --- lisp/emacs-lisp/cl-loaddefs.el 2011-01-28 16:58:04 +0000 +++ lisp/emacs-lisp/cl-loaddefs.el 2011-02-08 06:54:37 +0000 @@ -282,7 +282,7 @@ ;;;;;; do-all-symbols do-symbols dotimes dolist do* do loop return-from ;;;;;; return block etypecase typecase ecase case load-time-value ;;;;;; eval-when destructuring-bind function* defmacro* defun* gentemp -;;;;;; gensym) "cl-macs" "cl-macs.el" "8b2ce9c2ec0e273606bb37c333c4bdde") +;;;;;; gensym) "cl-macs" "cl-macs.el" "0904b956872432ae7cc5fa9abcefce63") ;;; Generated autoloads from cl-macs.el (autoload 'gensym "cl-macs" "\ @@ -389,7 +389,7 @@ (autoload 'return-from "cl-macs" "\ Return from the block named NAME. -This jump out to the innermost enclosing `(block NAME ...)' form, +This jumps out to the innermost enclosing `(block NAME ...)' form, returning RESULT from that form (or nil if RESULT is omitted). This is compatible with Common Lisp, but note that `defun' and `defmacro' do not create implicit blocks as they do in Common Lisp. === modified file 'lisp/ibuffer.el' --- lisp/ibuffer.el 2011-01-28 16:58:04 +0000 +++ lisp/ibuffer.el 2011-02-08 06:54:37 +0000 @@ -2638,7 +2638,7 @@ ;;;;;; ibuffer-backward-filter-group ibuffer-forward-filter-group ;;;;;; ibuffer-toggle-filter-group ibuffer-mouse-toggle-filter-group ;;;;;; ibuffer-interactive-filter-by-mode ibuffer-mouse-filter-by-mode -;;;;;; ibuffer-auto-mode) "ibuf-ext" "ibuf-ext.el" "f163e17664a89a6f0aa2b15bfaaa65a4") +;;;;;; ibuffer-auto-mode) "ibuf-ext" "ibuf-ext.el" "eb3de21aef70e4ca75f611f1c3c56aa1") ;;; Generated autoloads from ibuf-ext.el (autoload 'ibuffer-auto-mode "ibuf-ext" "\ === modified file 'src/ChangeLog' --- src/ChangeLog 2011-02-07 06:18:23 +0000 +++ src/ChangeLog 2011-02-08 06:56:57 +0000 @@ -1,3 +1,7 @@ +2011-02-08 Kenichi Handa + + * font.c (Ffont_get): Do not cache :otf value. + 2011-02-07 Paul Eggert conform to C89 pointer rules === modified file 'src/font.c' --- src/font.c 2011-02-05 10:20:15 +0000 +++ src/font.c 2011-02-08 06:56:57 +0000 @@ -3982,7 +3982,6 @@ val = fontp->driver->otf_capability (fontp); else val = Fcons (Qnil, Qnil); - font_put_extra (font, QCotf, val); } else val = Fcdr (val); ------------------------------------------------------------ revno: 103185 author: Lars Ingebrigtsen committer: Katsumi Yamaoka branch nick: trunk timestamp: Mon 2011-02-07 22:49:38 +0000 message: nnimap.el (nnimap-update-info): Simplify split history test. diff: === modified file 'lisp/gnus/ChangeLog' --- lisp/gnus/ChangeLog 2011-02-07 13:03:22 +0000 +++ lisp/gnus/ChangeLog 2011-02-07 22:49:38 +0000 @@ -7,6 +7,7 @@ characters. (nnimap-process-quirk): Renamed function to avoid collision. (nnimap-update-info): Fix macrology bug-out. + (nnimap-update-info): Simplify split history test. 2011-02-06 Lars Ingebrigtsen === modified file 'lisp/gnus/nnimap.el' --- lisp/gnus/nnimap.el 2011-02-07 13:03:22 +0000 +++ lisp/gnus/nnimap.el 2011-02-07 22:49:38 +0000 @@ -1342,13 +1342,11 @@ ;; Tell Gnus whether there are any \Recent messages in any of ;; the groups. (let ((recent (cdr (assoc '%Recent flags)))) - (when (and active recent) - (while recent - (when (> (car recent) (cdr active)) - (push (list (cons (gnus-group-real-name group) 0)) - nnmail-split-history) - (setq recent nil)) - (pop recent)))) + (when (and active + recent + (> (car (last recent)) (cdr active))) + (push (list (cons (gnus-group-real-name group) 0)) + nnmail-split-history))) ;; Note the active level for the next run-through. (gnus-group-set-parameter info 'active (gnus-active group)) (gnus-group-set-parameter info 'uidvalidity uidvalidity) ------------------------------------------------------------ revno: 103184 committer: Jay Belanger branch nick: trunk timestamp: Mon 2011-02-07 16:25:31 -0600 message: calc/calc-units.el (math-logunits-quant): Add support for non-logarithmic units. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2011-02-07 20:43:36 +0000 +++ lisp/ChangeLog 2011-02-07 22:25:31 +0000 @@ -1,3 +1,8 @@ +2011-02-07 Jay Belanger + + * calc/calc-units.el (math-logunits-quant): Add support for + non-logarithmic units. + 2011-02-07 Ken Manheimer * allout.el (allout-after-copy-or-kill-hook): New hook for === modified file 'lisp/calc/calc-units.el' --- lisp/calc/calc-units.el 2011-02-07 00:54:23 +0000 +++ lisp/calc/calc-units.el 2011-02-07 22:25:31 +0000 @@ -1737,26 +1737,28 @@ (calc-binary-op "lu/" 'calcFunc-lupowerdiv arg))))) (defun math-logunits-quant (val ref power) - (let ((lunit (math-simplify (math-extract-logunits val)))) + (let* ((units (math-simplify (math-extract-units val))) + (lunit (math-simplify (math-extract-logunits units)))) (if (not (eq (car-safe lunit) 'var)) (calc-record-why "*Improper logarithmic unit" lunit) - (if (not (eq 1 (math-simplify (math-extract-units (math-div val lunit))))) - (calc-record-why "*Inappropriate units" nil) - (let ((coeff (math-simplify (math-div val lunit)))) - (if (equal lunit '(var dB var-dB)) - (math-mul - ref - (math-pow - 10 - (math-div - coeff - (if power 10 20)))) - (math-mul - ref - (calcFunc-exp - (if power - (math-mul 2 coeff) - coeff))))))))) + (let ((runits (math-simplify (math-div units lunit))) + (coeff (math-simplify (math-div val units)))) + (math-mul + (if (equal lunit '(var dB var-dB)) + (math-mul + ref + (math-pow + 10 + (math-div + coeff + (if power 10 20)))) + (math-mul + ref + (calcFunc-exp + (if power + (math-mul 2 coeff) + coeff)))) + runits))))) (defvar calc-logunits-field-reference) (defvar calc-logunits-power-reference) ------------------------------------------------------------ revno: 103183 committer: Ken Manheimer branch nick: trunk timestamp: Mon 2011-02-07 15:43:36 -0500 message: allout.el (allout-after-copy-or-kill-hook): New hook for extension-specific processing of killed text. (allout-mode): Include new allout-after-copy-or-kill-hook among mentioned hooks. (allout-kill-line) (allout-kill-topic): Ensure that processing after kill happens even if barf-if-buffer-read-only is raised. Include new allout-after-copy-or-kill-hook among that subsequent processing. (allout-deannotate-hidden): Actually remove the annotation text properties. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2011-02-07 18:58:17 +0000 +++ lisp/ChangeLog 2011-02-07 20:43:36 +0000 @@ -1,5 +1,16 @@ 2011-02-07 Ken Manheimer + * allout.el (allout-after-copy-or-kill-hook): New hook for + extension-specific processing of killed text. + (allout-mode): Include new allout-after-copy-or-kill-hook among + mentioned hooks. + (allout-kill-line) (allout-kill-topic): Ensure that processing + after kill happens even if barf-if-buffer-read-only is raised. + Include new allout-after-copy-or-kill-hook among that subsequent + processing. + (allout-deannotate-hidden): Actually remove the annotation text + properties. + * allout.el (allout-listify-exposed): Copy text sans text properties. 2011-02-07 Michael Albinus === modified file 'lisp/allout.el' --- lisp/allout.el 2011-02-07 18:55:33 +0000 +++ lisp/allout.el 2011-02-07 20:43:36 +0000 @@ -1437,6 +1437,13 @@ that native allout routines do not control. This hook might be invoked multiple times by a single command.") +;;;_ = allout-after-copy-or-kill-hook +(defvar allout-after-copy-or-kill-hook nil + "*Hook that's run after copying outline text. + +Functions on the hook should take two arguments: + + START, END -- integers indicating the span containing the copied text.") ;;;_ = allout-outside-normal-auto-fill-function (defvar allout-outside-normal-auto-fill-function nil "Value of normal-auto-fill-function outside of allout mode. @@ -1908,6 +1915,7 @@ `allout-structure-added-hook' `allout-structure-deleted-hook' `allout-structure-shifted-hook' +`allout-after-copy-or-kill-hook' Terminology @@ -4382,17 +4390,19 @@ (depth (allout-depth))) (allout-annotate-hidden beg end) - (if (and (not beg-hidden) (not end-hidden)) - (allout-unprotected (kill-line arg)) - (kill-line arg)) - (allout-deannotate-hidden beg end) + (unwind-protect + (if (and (not beg-hidden) (not end-hidden)) + (allout-unprotected (kill-line arg)) + (kill-line arg)) + (run-hook-with-args 'allout-after-copy-or-kill-hook beg end) + (allout-deannotate-hidden beg end) - (if allout-numbered-bullet - (save-excursion ; Renumber subsequent topics if needed: - (if (not (save-match-data (looking-at allout-regexp))) - (allout-next-heading)) - (allout-renumber-to-depth depth))) - (run-hook-with-args 'allout-structure-deleted-hook depth (point))))) + (if allout-numbered-bullet + (save-excursion ; Renumber subsequent topics if needed: + (if (not (save-match-data (looking-at allout-regexp))) + (allout-next-heading)) + (allout-renumber-to-depth depth))) + (run-hook-with-args 'allout-structure-deleted-hook depth (point)))))) ;;;_ > allout-copy-line-as-kill () (defun allout-copy-line-as-kill () "Like allout-kill-topic, but save to kill ring instead of deleting." @@ -4433,15 +4443,14 @@ (forward-char 1))) (allout-annotate-hidden beg (setq end (point))) - (unwind-protect + (unwind-protect ; for possible barf-if-buffer-read-only. (allout-unprotected (kill-region beg end)) - (if buffer-read-only - ;; eg, during copy-as-kill. - (allout-deannotate-hidden beg end))) + (allout-deannotate-hidden beg end) + (run-hook-with-args 'allout-after-copy-or-kill-hook beg end) - (save-excursion - (allout-renumber-to-depth depth)) - (run-hook-with-args 'allout-structure-deleted-hook depth (point)))) + (save-excursion + (allout-renumber-to-depth depth)) + (run-hook-with-args 'allout-structure-deleted-hook depth (point))))) ;;;_ > allout-copy-topic-as-kill () (defun allout-copy-topic-as-kill () "Like `allout-kill-topic', but save to kill ring instead of deleting." @@ -4494,8 +4503,7 @@ (allout-unprotected (let ((inhibit-read-only t) (buffer-undo-list t)) - ;(remove-text-properties begin end '(allout-was-hidden t)) - ))) + (remove-text-properties begin end '(allout-was-hidden t))))) ;;;_ > allout-hide-by-annotation (begin end) (defun allout-hide-by-annotation (begin end) "Translate text properties indicating exposure status into actual exposure." ------------------------------------------------------------ revno: 103182 committer: Eli Zaretskii branch nick: trunk timestamp: Mon 2011-02-07 21:15:02 +0200 message: Regenerate lib/getopt_.h. diff: === modified file 'lib/getopt_.h' --- lib/getopt_.h 2011-01-29 12:36:11 +0000 +++ lib/getopt_.h 2011-02-07 19:15:02 +0000 @@ -211,6 +211,7 @@ one). For long options that have a zero `flag' field, `getopt' returns the contents of the `val' field. */ +# if !GNULIB_defined_struct_option struct option { const char *name; @@ -220,6 +221,8 @@ int *flag; int val; }; +# define GNULIB_defined_struct_option 1 +# endif /* Names for the values of the `has_arg' field of `struct option'. */ ------------------------------------------------------------ revno: 103181 committer: Ken Manheimer branch nick: trunk timestamp: Mon 2011-02-07 13:58:17 -0500 message: * allout.el (allout-listify-exposed): Copy text sans text properties. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2011-02-07 08:01:15 +0000 +++ lisp/ChangeLog 2011-02-07 18:58:17 +0000 @@ -1,3 +1,7 @@ +2011-02-07 Ken Manheimer + + * allout.el (allout-listify-exposed): Copy text sans text properties. + 2011-02-07 Michael Albinus * net/dbus.el (dbus-list-activatable-names): Add optional argument ------------------------------------------------------------ revno: 103180 committer: Ken Manheimer branch nick: trunk timestamp: Mon 2011-02-07 13:55:33 -0500 message: (allout-listify-exposed): Copy text sans text properties. diff: === modified file 'lisp/allout.el' --- lisp/allout.el 2011-01-25 04:08:28 +0000 +++ lisp/allout.el 2011-02-07 18:55:33 +0000 @@ -5406,8 +5406,10 @@ ;; Goto initial topic, and register preceeding stuff, if any: (if (> (allout-goto-prefix-doublechecked) start) ;; First topic follows beginning point -- register preliminary stuff: - (setq result (list (list 0 "" nil - (buffer-substring start (1- (point))))))) + (setq result + (list (list 0 "" nil + (buffer-substring-no-properties start + (1- (point))))))) (while (and (not done) (not (eobp)) ; Loop until we've covered the region. (not (> (point) end))) @@ -5426,7 +5428,7 @@ (setq strings nil) (while (> next (point)) ; Get all the exposed text in (setq strings - (cons (buffer-substring + (cons (buffer-substring-no-properties beg ;To hidden text or end of line: (progn ------------------------------------------------------------ revno: 103179 author: Lars Ingebrigtsen committer: Katsumi Yamaoka branch nick: trunk timestamp: Mon 2011-02-07 13:03:22 +0000 message: nnimap.el (nnimap-update-info): Refactor slightly. (nnimap-update-info): Tell Gnus whether there are any \Recent messages. (nnimap-update-info): Clean up slightly. (nnimap-quirk): Add quirk for Gmail IMAP which bugs out on NUL characters. (nnimap-process-quirk): Renamed function to avoid collision. (nnimap-update-info): Fix macrology bug-out. diff: === modified file 'lisp/gnus/ChangeLog' --- lisp/gnus/ChangeLog 2011-02-06 22:27:28 +0000 +++ lisp/gnus/ChangeLog 2011-02-07 13:03:22 +0000 @@ -1,3 +1,13 @@ +2011-02-07 Lars Ingebrigtsen + + * nnimap.el (nnimap-update-info): Refactor slightly. + (nnimap-update-info): Tell Gnus whether there are any \Recent messages. + (nnimap-update-info): Clean up slightly. + (nnimap-quirk): Add quirk for Gmail IMAP which bugs out on NUL + characters. + (nnimap-process-quirk): Renamed function to avoid collision. + (nnimap-update-info): Fix macrology bug-out. + 2011-02-06 Lars Ingebrigtsen * nntp.el (nntp-finish-retrieve-group-infos): Protect against the first === modified file 'lisp/gnus/nnimap.el' --- lisp/gnus/nnimap.el 2011-02-03 23:43:22 +0000 +++ lisp/gnus/nnimap.el 2011-02-07 13:03:22 +0000 @@ -969,30 +969,54 @@ (nnimap-add-cr) (setq message (buffer-substring-no-properties (point-min) (point-max))) (with-current-buffer (nnimap-buffer) - ;; If we have this group open read-only, then unselect it - ;; before appending to it. - (when (equal (nnimap-examined nnimap-object) group) - (nnimap-unselect-group)) - (erase-buffer) - (setq sequence (nnimap-send-command - "APPEND %S {%d}" (utf7-encode group t) - (length message))) - (unless nnimap-streaming - (nnimap-wait-for-connection "^[+]")) - (process-send-string (get-buffer-process (current-buffer)) message) - (process-send-string (get-buffer-process (current-buffer)) - (if (nnimap-newlinep nnimap-object) - "\n" - "\r\n")) - (let ((result (nnimap-get-response sequence))) - (if (not (nnimap-ok-p result)) - (progn - (nnheader-report 'nnimap "%s" result) - nil) - (cons group - (or (nnimap-find-uid-response "APPENDUID" (car result)) - (nnimap-find-article-by-message-id - group message-id))))))))) + (when (setq message (nnimap-process-quirk "OK Gimap " 'append message)) + ;; If we have this group open read-only, then unselect it + ;; before appending to it. + (when (equal (nnimap-examined nnimap-object) group) + (nnimap-unselect-group)) + (erase-buffer) + (setq sequence (nnimap-send-command + "APPEND %S {%d}" (utf7-encode group t) + (length message))) + (unless nnimap-streaming + (nnimap-wait-for-connection "^[+]")) + (process-send-string (get-buffer-process (current-buffer)) message) + (process-send-string (get-buffer-process (current-buffer)) + (if (nnimap-newlinep nnimap-object) + "\n" + "\r\n")) + (let ((result (nnimap-get-response sequence))) + (if (not (nnimap-ok-p result)) + (progn + (nnheader-report 'nnimap "%s" result) + nil) + (cons group + (or (nnimap-find-uid-response "APPENDUID" (car result)) + (nnimap-find-article-by-message-id + group message-id)))))))))) + +(defun nnimap-process-quirk (greeting-match type data) + (when (and (nnimap-greeting nnimap-object) + (string-match "OK Gimap " (nnimap-greeting nnimap-object)) + (eq type 'append) + (string-match "\000" data)) + (let ((choice (gnus-multiple-choice + "Message contains NUL characters. Delete, continue, abort? " + '((?d "Delete NUL characters") + (?c "Try to APPEND the message as is") + (?a "Abort"))))) + (cond + ((eq choice ?a) + (nnheader-report 'nnimap "Aborted APPEND due to NUL characters")) + ((eq choice ?c) + data) + (t + (with-temp-buffer + (insert data) + (goto-char (point-min)) + (while (search-forward "\000" nil t) + (replace-match "" t t)) + (buffer-string))))))) (defun nnimap-ok-p (value) (and (consp value) @@ -1249,10 +1273,9 @@ (t ;; No articles and no uidnext. nil))) - (gnus-set-active - group - (cons (car active) - (or high (1- uidnext))))) + (gnus-set-active group + (cons (car active) + (or high (1- uidnext))))) ;; See whether this is a read-only group. (unless (eq permanent-flags 'not-scanned) (gnus-group-set-parameter @@ -1316,6 +1339,16 @@ (when new-marks (push (cons (car type) new-marks) marks))))) (gnus-info-set-marks info marks t)))) + ;; Tell Gnus whether there are any \Recent messages in any of + ;; the groups. + (let ((recent (cdr (assoc '%Recent flags)))) + (when (and active recent) + (while recent + (when (> (car recent) (cdr active)) + (push (list (cons (gnus-group-real-name group) 0)) + nnmail-split-history) + (setq recent nil)) + (pop recent)))) ;; Note the active level for the next run-through. (gnus-group-set-parameter info 'active (gnus-active group)) (gnus-group-set-parameter info 'uidvalidity uidvalidity) ------------------------------------------------------------ revno: 103178 committer: Michael Albinus branch nick: trunk timestamp: Mon 2011-02-07 10:21:08 +0100 message: * dbus.texi (Bus names): Adapt descriptions for dbus-list-activatable-names and dbus-list-known-names. diff: === modified file 'doc/misc/ChangeLog' --- doc/misc/ChangeLog 2011-02-07 01:35:09 +0000 +++ doc/misc/ChangeLog 2011-02-07 09:21:08 +0000 @@ -1,3 +1,8 @@ +2011-02-07 Michael Albinus + + * dbus.texi (Bus names): Adapt descriptions for + dbus-list-activatable-names and dbus-list-known-names. + 2011-02-07 Jay Belanger * calc.texi (Logarithmic Units): New section. === modified file 'doc/misc/dbus.texi' --- doc/misc/dbus.texi 2011-01-25 04:08:28 +0000 +++ doc/misc/dbus.texi 2011-02-07 09:21:08 +0000 @@ -132,14 +132,24 @@ registered names. Internally they use the basic interface @samp{org.freedesktop.DBus}, which is supported by all objects of a bus. -@defun dbus-list-activatable-names -This function returns the D-Bus service names, which can be activated. -An activatable service is described in a service registration file. -Under GNU/Linux, such files are located at -@file{/usr/share/dbus-1/services/}. +@defun dbus-list-activatable-names &optional bus +This function returns the D-Bus service names, which can be activated +for @var{bus}. It must be either the symbol @code{:system} (the +default) or the symbol @code{:session}. An activatable service is +described in a service registration file. Under GNU/Linux, such files +are located at @file{/usr/share/dbus-1/system-services/} (for the +@code{:system} bus) or @file{/usr/share/dbus-1/services/}. An +activatable service is not necessarily registered at @var{bus} at already. The result is a list of strings, which is @code{nil} when there are no -activatable service names at all. +activatable service names at all. Example: + +@lisp +;; Check, whether the document viewer can be accessed via D-Bus. +(member "org.gnome.evince.Daemon" + (dbus-list-activatable-names :session)) +@end lisp + @end defun @defun dbus-list-names bus @@ -154,7 +164,7 @@ @end defun @defun dbus-list-known-names bus -Retrieves all services which correspond to a known name in @var{bus}. +Retrieves all registered services which correspond to a known name in @var{bus}. A service has a known name if it doesn't start with @samp{:}. The result is a list of strings, which is @code{nil} when there are no known names at all. ------------------------------------------------------------ revno: 103177 committer: Michael Albinus branch nick: trunk timestamp: Mon 2011-02-07 09:01:15 +0100 message: * net/dbus.el (dbus-list-activatable-names): Add optional argument BUS. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2011-02-07 00:54:23 +0000 +++ lisp/ChangeLog 2011-02-07 08:01:15 +0000 @@ -1,3 +1,8 @@ +2011-02-07 Michael Albinus + + * net/dbus.el (dbus-list-activatable-names): Add optional argument + BUS. + 2011-02-07 Deniz Dogan * net/rcirc.el (rcirc-handler-317): New function (Bug#6507). === modified file 'lisp/net/dbus.el' --- lisp/net/dbus.el 2011-01-25 04:08:28 +0000 +++ lisp/net/dbus.el 2011-02-07 08:01:15 +0000 @@ -506,13 +506,14 @@ ;;; D-Bus registered names. -(defun dbus-list-activatable-names () +(defun dbus-list-activatable-names (&optional bus) "Return the D-Bus service names which can be activated as list. -The result is a list of strings, which is `nil' when there are no -activatable service names at all." +If BUS is left nil, `:system' is assumed. The result is a list +of strings, which is `nil' when there are no activatable service +names at all." (dbus-ignore-errors (dbus-call-method - :system dbus-service-dbus + (or bus :system) dbus-service-dbus dbus-path-dbus dbus-interface-dbus "ListActivatableNames"))) (defun dbus-list-names (bus) ------------------------------------------------------------ revno: 103176 [merge] committer: Paul Eggert branch nick: trunk timestamp: Sun 2011-02-06 22:18:55 -0800 message: Merge: * image.c: conform to C89 pointer rules diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2011-02-07 06:15:32 +0000 +++ src/ChangeLog 2011-02-07 06:18:23 +0000 @@ -28,6 +28,7 @@ * indent.c (compute_motion): Likewise. * xfont.c (xfont_decode_coding_xlfd): Likewise. * ralloc.c (resize_bloc): Likewise. + * image.c (tiff_load): Likewise. * xml.c (make_dom, parse_region): Likewise. * character.c (strwidth): Make its argument const char *, not const unsigned char *, since more callers prefer it that way. All callers === modified file 'src/image.c' --- src/image.c 2011-02-06 08:51:35 +0000 +++ src/image.c 2011-02-07 06:18:23 +0000 @@ -6778,7 +6778,7 @@ } /* Try to open the image file. */ - tiff = fn_TIFFOpen (SDATA (file), "r"); + tiff = fn_TIFFOpen (SSDATA (file), "r"); if (tiff == NULL) { image_error ("Cannot open `%s'", file, Qnil); ------------------------------------------------------------ Use --include-merges or -n0 to see merged revisions.