From: Noam Postavsky Date: Sun, 28 Apr 2019 20:29:44 +0000 (-0400) Subject: Replace use of obsolete string-make-unibyte X-Git-Tag: emacs-27.0.90~3050 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=74712470fcb95cd4ef6ef5c61eee73cb8e02a8bd;p=emacs.git Replace use of obsolete string-make-unibyte * lisp/image-file.el (insert-image-file): Use encode-coding-region instead of string-make-unibyte. * test/lisp/image-file-tests.el: New test. --- diff --git a/lisp/image-file.el b/lisp/image-file.el index abc4686d69c..6cadc42110f 100644 --- a/lisp/image-file.el +++ b/lisp/image-file.el @@ -110,11 +110,8 @@ absolute file name and number of characters inserted." (let* ((ibeg (point)) (iend (+ (point) (cadr rval))) (visitingp (and visit (= ibeg (point-min)) (= iend (point-max)))) - (data - (string-make-unibyte - (buffer-substring-no-properties ibeg iend))) - (image - (create-image data nil t)) + (image (create-image (encode-coding-region ibeg iend 'binary t) + nil t)) (props `(display ,image yank-handler diff --git a/test/lisp/image-file-tests.el b/test/lisp/image-file-tests.el new file mode 100644 index 00000000000..b3676d1f02c --- /dev/null +++ b/test/lisp/image-file-tests.el @@ -0,0 +1,44 @@ +;;; image-file-tests.el --- Test suite for image-files -*- lexical-binding: t; -*- + +;; Copyright (C) 2019 Free Software Foundation, Inc. + +;; This file is part of GNU Emacs. + +;; GNU Emacs is free software: you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; GNU Emacs is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with GNU Emacs. If not, see . + +;;; Commentary: + +;;; Code: + +(require 'ert) +(require 'image-file) + +(defconst image-file-tests-data-directory + (expand-file-name "data/image" (getenv "EMACS_TEST_DIRECTORY")) + "Directory containing image test data.") + +(ert-deftest insert-image-file () + (skip-unless (image-type-available-p 'png)) + (with-temp-buffer + (set-buffer-multibyte t) + (insert-image-file (expand-file-name "blank-100x200.png" + image-file-tests-data-directory)) + (should (image--get-image))) + (with-temp-buffer + (set-buffer-multibyte nil) + (insert-image-file (expand-file-name "blank-100x200.png" + image-file-tests-data-directory)) + (should (image--get-image)))) + +;;; image-file-tests.el ends here