]> git.eshelyaron.com Git - emacs.git/commitdiff
Revert slurp_image extraction for svg_load
authorStefan Kangas <stefankangas@gmail.com>
Thu, 5 Oct 2023 23:54:12 +0000 (01:54 +0200)
committerStefan Kangas <stefankangas@gmail.com>
Thu, 5 Oct 2023 23:57:39 +0000 (01:57 +0200)
* src/image.c (svg_load): Inline slurp_image code again, as it didn't
build in its current form.
Reported by Andreas Schwab <schwab@linux-m68k.org>.

src/image.c

index fcae13e23021777277c486609ed87aefb3ad099c..9a465f0b180d1117edda74c0b5b3472b5ee4f278 100644 (file)
@@ -11684,11 +11684,22 @@ svg_load (struct frame *f, struct image *img)
   base_uri = image_spec_value (img->spec, QCbase_uri, NULL);
   if (STRINGP (file_name))
     {
+      image_fd fd;
+      Lisp_Object file = image_find_image_fd (file_name, &fd);
+      if (!STRINGP (file))
+       {
+         image_not_found_error (file_name);
+         return false;
+       }
+
+      /* Read the entire file into memory.  */
       ptrdiff_t size;
-      char *contents = slurp_image (file_name, &size, "SVG");
+      char *contents = slurp_file (fd, &size);
       if (contents == NULL)
-       return false;
-
+       {
+         image_error ("Error loading SVG image `%s'", file);
+         return false;
+       }
       /* If the file was slurped into memory properly, parse it.  */
       if (!STRINGP (base_uri))
         base_uri = file;