summaryrefslogtreecommitdiff
path: root/lisp/term/w32-win.el
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2010-12-31 14:38:06 +0200
committerEli Zaretskii <eliz@gnu.org>2010-12-31 14:38:06 +0200
commit5be1c984b7839d528cf9e83c68b9055c29bed751 (patch)
treebd7d1c8021a0f2b48edb6e58beb3ce195cbea162 /lisp/term/w32-win.el
parent89dc29d9c8e7957d047e9e9abe95334d70982814 (diff)
downloademacs-5be1c984b7839d528cf9e83c68b9055c29bed751.tar.gz
emacs-5be1c984b7839d528cf9e83c68b9055c29bed751.tar.bz2
emacs-5be1c984b7839d528cf9e83c68b9055c29bed751.zip
Fix bug #7716 with PNG image support libraries on Windows.
src/image.c <Qlibpng_version>: New variable. (syms_of_image): Intern and staticpro it. Set its value to the version of PNG library we were compiled with. (my_png_error, png_load): Avoid GCC warnings about direct access to png_ptr->jmpbuf. lisp/term/w32-win.el (image-library-alist): Set up correctly for libpng versions both before and after 1.4.0. admin/nt/README.W32: Update the information about PNG support libraries. nt/INSTALL: Update the information about PNG support libraries.
Diffstat (limited to 'lisp/term/w32-win.el')
-rw-r--r--lisp/term/w32-win.el30
1 files changed, 19 insertions, 11 deletions
diff --git a/lisp/term/w32-win.el b/lisp/term/w32-win.el
index 1779d1025e0..7bded5b8758 100644
--- a/lisp/term/w32-win.el
+++ b/lisp/term/w32-win.el
@@ -200,17 +200,25 @@ See the documentation of `create-fontset-from-fontset-spec' for the format.")
;;; Set default known names for image libraries
(setq image-library-alist
- '((xpm "libxpm.dll" "xpm4.dll" "libXpm-nox4.dll")
- (png "libpng12d.dll" "libpng12.dll" "libpng.dll"
- ;; these are libpng 1.2.8 from GTK+
- "libpng13d.dll" "libpng13.dll")
- (jpeg "jpeg62.dll" "libjpeg.dll" "jpeg-62.dll" "jpeg.dll")
- (tiff "libtiff3.dll" "libtiff.dll")
- (gif "giflib4.dll" "libungif4.dll" "libungif.dll")
- (svg "librsvg-2-2.dll")
- (gdk-pixbuf "libgdk_pixbuf-2.0-0.dll")
- (glib "libglib-2.0-0.dll")
- (gobject "libgobject-2.0-0.dll")))
+ (list
+ '(xpm "libxpm.dll" "xpm4.dll" "libXpm-nox4.dll")
+ ;; Versions of libpng 1.4.x and later are incompatible with
+ ;; earlier versions. Set up the list of libraries according to
+ ;; the version we were compiled against. (If we were compiled
+ ;; without PNG support, libpng-version's value is -1.)
+ (if (>= libpng-version 10400)
+ ;; libpng14-14.dll is libpng 1.4.3 from GTK+
+ '(png "libpng14-14.dll" "libpng14.dll")
+ '(png "libpng12d.dll" "libpng12.dll" "libpng3.dll" "libpng.dll"
+ ;; these are libpng 1.2.8 from GTK+
+ "libpng13d.dll" "libpng13.dll"))
+ '(jpeg "jpeg62.dll" "libjpeg.dll" "jpeg-62.dll" "jpeg.dll")
+ '(tiff "libtiff3.dll" "libtiff.dll")
+ '(gif "giflib4.dll" "libungif4.dll" "libungif.dll")
+ '(svg "librsvg-2-2.dll")
+ '(gdk-pixbuf "libgdk_pixbuf-2.0-0.dll")
+ '(glib "libglib-2.0-0.dll")
+ '(gobject "libgobject-2.0-0.dll")))
;;; multi-tty support
(defvar w32-initialized nil