comparison src/fringe.c @ 83228:2a3f27a45698

Merged in changes from CVS trunk. Patches applied: * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-694 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-695 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-696 Merge from gnus--rel--5.10 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-697 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-698 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-699 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-700 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-701 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-702 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-703 Merge from gnus--rel--5.10 * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-704 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-705 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-706 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-707 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-708 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-709 Update from CVS: src/indent.c (Fvertical_motion): Fix last change. * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-710 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-711 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-712 Update from CVS * miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-713 Update from CVS * miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-72 Update from CVS * miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-73 Merge from emacs--cvs-trunk--0 git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-268
author Karoly Lorentey <lorentey@elte.hu>
date Mon, 22 Nov 2004 11:06:39 +0000
parents 3ec251523b3e fc159de41e11
children 549734260e34
comparison
equal deleted inserted replaced
83227:3ec251523b3e 83228:2a3f27a45698
1208 should be repeated. 1208 should be repeated.
1209 If BITMAP already exists, the existing definition is replaced. */) 1209 If BITMAP already exists, the existing definition is replaced. */)
1210 (bitmap, bits, height, width, align) 1210 (bitmap, bits, height, width, align)
1211 Lisp_Object bitmap, bits, height, width, align; 1211 Lisp_Object bitmap, bits, height, width, align;
1212 { 1212 {
1213 Lisp_Object len;
1214 int n, h, i, j; 1213 int n, h, i, j;
1215 unsigned short *b; 1214 unsigned short *b;
1216 struct fringe_bitmap fb, *xfb; 1215 struct fringe_bitmap fb, *xfb;
1217 int fill1 = 0, fill2 = 0; 1216 int fill1 = 0, fill2 = 0;
1218 1217
1219 CHECK_SYMBOL (bitmap); 1218 CHECK_SYMBOL (bitmap);
1220 1219
1221 if (!STRINGP (bits) && !VECTORP (bits)) 1220 if (STRINGP (bits))
1222 bits = wrong_type_argument (Qstringp, bits); 1221 h = SCHARS (bits);
1223 1222 else if (VECTORP (bits))
1224 len = Flength (bits); 1223 h = XVECTOR (bits)->size;
1224 else
1225 bits = wrong_type_argument (Qsequencep, bits);
1225 1226
1226 if (NILP (height)) 1227 if (NILP (height))
1227 h = fb.height = XINT (len); 1228 fb.height = h;
1228 else 1229 else
1229 { 1230 {
1230 CHECK_NUMBER (height); 1231 CHECK_NUMBER (height);
1231 fb.height = min (XINT (height), 255); 1232 fb.height = min (XINT (height), 255);
1232 if (fb.height > XINT (len)) 1233 if (fb.height > h)
1233 { 1234 {
1234 h = XINT (len);
1235 fill1 = (fb.height - h) / 2; 1235 fill1 = (fb.height - h) / 2;
1236 fill2 = fb.height - h - fill1; 1236 fill2 = fb.height - h - fill1;
1237 } 1237 }
1238 } 1238 }
1239 1239