Subject: bug#36403: 27.0.50; Trivial image.c bugs

From: Lars Ingebrigtsen <[email-masked]>
Date: Fri, 21 Aug 2020 01:32:27 +0200

D'oh.  Pip's patch here just had reverse logic -- removing the ! from
before the equal_lists fixes the issue for me, so I've now pushed that
fix.

  for (img = c->buckets[i]; img; img = img->next)
     if (img->hash == hash
-	&& !NILP (Fequal (img->spec, spec))
+	&& !equal_lists (img->spec, spec)
 	&& img->frame_foreground == FRAME_FOREGROUND_PIXEL (f)
 	&& img->frame_background == FRAME_BACKGROUND_PIXEL (f))

I guess the !NILP (Fequal...) idiom tainted the rewrite...

I've often wondered why we use !NILP instead of, like TRUEP or
something.  !NILP doesn't feel very natural.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no