Subject: bug#22072: Error in display-startup-screen if create-image fails

From: Richard Copley <[email-masked]>
Date: Wed, 2 Dec 2015 20:07:01 +0000

Thanks Stephen. More haste, less speed ... you shouldn't have changed
"let*" to "let" and the parentheses don't match. After fixing those
things, yes, doing as you suggest allows my broken Emacs to start
without the fancy image and without error.

On 2 December 2015 at 12:36, Stephen Leake
<[email-masked]> wrote:
> Richard Copley <[email-masked]> writes:
>
> Can you test this patch:
>
> diff --git a/lisp/startup.el b/lisp/startup.el
> index 1346310..a281f86 100644
> --- a/lisp/startup.el
> +++ b/lisp/startup.el
> @@ -1874,13 +1874,13 @@ we put it on this frame."
>                   (image-type-available-p 'pbm)))
>      (let ((frame (fancy-splash-frame)))
>        (when frame
> -       (let* ((img (create-image (fancy-splash-image-file)))
> -              (image-height (and img (cdr (image-size img nil frame))))
> -              ;; We test frame-height so that, if the frame is split
> -              ;; by displaying a warning, that doesn't cause the normal
> -              ;; splash screen to be used.
> -              (frame-height (1- (frame-height frame))))
> -         (> frame-height (+ image-height 19)))))))
> +       (let ((img (create-image (fancy-splash-image-file))))
> +              (image-height (and img (cdr (image-size img nil frame))))
> +              ;; We test frame-height so that, if the frame is split
> +              ;; by displaying a warning, that doesn't cause the normal
> +              ;; splash screen to be used.
> +              (frame-height (and img (1- (frame-height frame)))))
> +         (and img (> frame-height (+ image-height 19))))))))
>
> --
> -- Stephe