diff src/fringe.c @ 58268:fc159de41e11

(Fdefine_fringe_bitmap): Always set 'h'. Simplify.
author Kim F. Storm <storm@cua.dk>
date Tue, 16 Nov 2004 15:41:54 +0000
parents fb4cd138f0b8
children 99a14d81043f 2a3f27a45698 b637c617432f
line wrap: on
line diff
--- a/src/fringe.c	Tue Nov 16 15:41:41 2004 +0000
+++ b/src/fringe.c	Tue Nov 16 15:41:54 2004 +0000
@@ -1204,7 +1204,6 @@
   (bitmap, bits, height, width, align)
      Lisp_Object bitmap, bits, height, width, align;
 {
-  Lisp_Object len;
   int n, h, i, j;
   unsigned short *b;
   struct fringe_bitmap fb, *xfb;
@@ -1212,20 +1211,21 @@
 
   CHECK_SYMBOL (bitmap);
 
-  if (!STRINGP (bits) && !VECTORP (bits))
-    bits = wrong_type_argument (Qstringp, bits);
-
-  len = Flength (bits);
+  if (STRINGP (bits))
+    h = SCHARS (bits);
+  else if (VECTORP (bits))
+    h = XVECTOR (bits)->size;
+  else
+    bits = wrong_type_argument (Qsequencep, bits);
 
   if (NILP (height))
-    h = fb.height = XINT (len);
+    fb.height = h;
   else
     {
       CHECK_NUMBER (height);
       fb.height = min (XINT (height), 255);
-      if (fb.height > XINT (len))
+      if (fb.height > h)
 	{
-	  h = XINT (len);
 	  fill1 = (fb.height - h) / 2;
 	  fill2 = fb.height - h - fill1;
 	}