Subject: bug#18813: 25.0.50; gnus start fails unless image.el is loaded in advance.

From: Katsumi Yamaoka <[email-masked]>
Date: Mon, 27 Oct 2014 12:31:01 +0900

On Mon, 27 Oct 2014 10:57:54 +0900, [email-masked] wrote:
> Katsumi Yamaoka <[email-masked]> writes:

>> Well, I have another doubt.  Did you mean image.elc is not loaded
>> only if the display type is not graphical?

> Loading image.el won't fail and it works.  I wonder if it is really
> necessary to setup image when display is not capable of displaying it.

I see.  The image data are definitely unnecessary for a non-graphic
display, so I'll add (display-graphic-p) to the tests.

> This bug#18813 doesn't occur on 24.0.50, since image.el is loaded while
> gnus-art.el is loaded (gnus-image-type-available-p defined in
> gnus-ems.el calls image-type-available-p).

Thank you for clarifying this.

> On 25.0.50, tests in gnus-image-type-available-p are reordered and now
> control returns before calling image-type-available-p when
> display-images-p returns nil (it is in my case).  So, image.el is not
> loaded.

> Hmm, why are they reordered?  I guess it is to avoid loading unnecessary
> library.

2013-06-06  Teodor Zlatanov  <[email-masked]>

	* gnus-ems.el (gnus-image-type-available-p): Test `display-images-p'
	before `image-type-available-p' to avoid loading the image libraries
	needlessly.

This is just the cause of your problem (it does not mean Ted's
change was wrong, of course).

In addition, my doubt about loading image.elc was cleared.

,---- loadup.el
| (if (fboundp 'x-create-frame)
|     (progn
|       (load "fringe")
|       ;; Needed by `imagemagick-register-types'
|       (load "emacs-lisp/regexp-opt")
|       (load "image")
|       (load "international/fontset")
|       (load "dnd")
|       (load "tool-bar")))
`----

This is why find-image is always available in my system.