aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorEli Zaretskii2019-05-18 17:44:16 +0300
committerEli Zaretskii2019-05-18 17:44:16 +0300
commit721c520f36c151a738c47404b498672390139ada (patch)
treecaa08e28bd00693dde5885d153efe78cad31240e /src
parentb0a0705a4e46831020edb7336a765c50baa093ff (diff)
downloademacs-721c520f36c151a738c47404b498672390139ada.tar.gz
emacs-721c520f36c151a738c47404b498672390139ada.zip
Fix display of images on MS-Windows broken by a recent commit
* src/image.c (initialize_image_type): Test if the type is in Vlibrary_cache up front, and return true without calling the 'init' method if the type was already initialized.
Diffstat (limited to 'src')
-rw-r--r--src/image.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/image.c b/src/image.c
index b82bf12aa5e..071b92a741e 100644
--- a/src/image.c
+++ b/src/image.c
@@ -9696,15 +9696,15 @@ static bool
9696initialize_image_type (struct image_type const *type) 9696initialize_image_type (struct image_type const *type)
9697{ 9697{
9698#ifdef WINDOWSNT 9698#ifdef WINDOWSNT
9699 bool (*init) (void) = type->init; 9699 Lisp_Object typesym = builtin_lisp_symbol (type->type);
9700 Lisp_Object tested = Fassq (typesym, Vlibrary_cache);
9701 /* If we failed to load the library before, don't try again. */
9702 if (CONSP (tested))
9703 return !NILP (XCDR (tested)) ? true : false;
9700 9704
9705 bool (*init) (void) = type->init;
9701 if (init) 9706 if (init)
9702 { 9707 {
9703 /* If we failed to load the library before, don't try again. */
9704 Lisp_Object typesym = builtin_lisp_symbol (type->type);
9705 Lisp_Object tested = Fassq (typesym, Vlibrary_cache);
9706 if (CONSP (tested) && NILP (XCDR (tested)))
9707 return false;
9708 bool type_valid = init (); 9708 bool type_valid = init ();
9709 Vlibrary_cache = Fcons (Fcons (typesym, type_valid ? Qt : Qnil), 9709 Vlibrary_cache = Fcons (Fcons (typesym, type_valid ? Qt : Qnil),
9710 Vlibrary_cache); 9710 Vlibrary_cache);