home *** CD-ROM | disk | FTP | other *** search
- Path: uunet!cs.utexas.edu!swrinde!mips!msi!dcmartin
- From: rws@expo.lcs.mit.edu (Bob Scheifler)
- Newsgroups: comp.sources.x
- Subject: v18i096: X11R5 public fix #17, Part02/02
- Message-ID: <1992Aug24.201132.26474@msi.com>
- Date: 24 Aug 92 20:11:32 GMT
- References: <csx-18i095-X11R5-fix17@uunet.UU.NET>
- Sender: dcmartin@msi.com (David C. Martin - Moderator)
- Organization: Molecular Simulations, Inc.
- Lines: 334
- Approved: dcmartin@msi.com
- Originator: dcmartin@fascet
-
- Submitted-by: Bob Scheifler <rws@expo.lcs.mit.edu>
- Posting-number: Volume 18, Issue 96
- Archive-name: X11R5-fix17/part02
-
- #!/bin/sh
- # this is part.02 (part 2 of a multipart archive)
- # do not concatenate these parts, unpack them in order with /bin/sh
- # file fix-17 continued
- #
- if test ! -r _shar_seq_.tmp; then
- echo 'Please unpack part 1 first!'
- exit 1
- fi
- (read Scheck
- if test "$Scheck" != 2; then
- echo Please unpack part "$Scheck" next!
- exit 1
- else
- exit 0
- fi
- ) < _shar_seq_.tmp || exit 1
- if test ! -f _shar_wnt_.tmp; then
- echo 'x - still skipping fix-17'
- else
- echo 'x - continuing file fix-17'
- sed 's/^X//' << 'SHAR_EOF' >> 'fix-17' &&
- X */
- X if (band[i].a0 == band[i].a1)
- ! band[i].a1 = band[i].a0 = 90 * 64 + 1;
- X }
- X }
- X computeAcc (&def, &acc);
- ***************
- *** 3785,3807 ****
- X if (mask & (1 << rightq)) {
- X if (sweep[j].a0 == righta)
- X passRight = right;
- ! if (sweep[j].a1 == righta) {
- X passLeft = right;
- X flipRight = 1;
- X }
- X }
- X if (mask & (1 << leftq)) {
- - if (sweep[j].a0 == lefta) {
- - if (passRight)
- - copyEnd = 1;
- - passRight = left;
- - flipLeft = 1;
- - }
- X if (sweep[j].a1 == lefta)
- X {
- X if (passLeft)
- X copyEnd = 1;
- X passLeft = left;
- X }
- X }
- X drawQuadrant (&def, &acc, sweep[j].a0, sweep[j].a1, mask,
- --- 3791,3813 ----
- X if (mask & (1 << rightq)) {
- X if (sweep[j].a0 == righta)
- X passRight = right;
- ! else if (sweep[j].a1 == righta) {
- X passLeft = right;
- X flipRight = 1;
- X }
- X }
- X if (mask & (1 << leftq)) {
- X if (sweep[j].a1 == lefta)
- X {
- X if (passLeft)
- X copyEnd = 1;
- X passLeft = left;
- + }
- + else if (sweep[j].a0 == lefta) {
- + if (passRight)
- + copyEnd = 1;
- + passRight = left;
- + flipLeft = 1;
- X }
- X }
- X drawQuadrant (&def, &acc, sweep[j].a0, sweep[j].a1, mask,
- *** /tmp/,RCSt1002526 Fri Aug 21 15:37:47 1992
- --- mit/server/ddx/mi/mi.h Sun May 17 10:34:51 1992
- ***************
- *** 1,4 ****
- ! /* $XConsortium: mi.h,v 1.7 90/06/12 13:12:27 rws Exp $ */
- X /***********************************************************
- X Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts,
- X and the Massachusetts Institute of Technology, Cambridge, Massachusetts.
- --- 1,4 ----
- ! /* $XConsortium: mi.h,v 1.8 92/05/17 10:33:25 rws Exp $ */
- X /***********************************************************
- X Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts,
- X and the Massachusetts Institute of Technology, Cambridge, Massachusetts.
- ***************
- *** 59,65 ****
- X extern void miPaintWindow();
- X extern miDashPtr miDashLine();
- X extern void miPushPixels();
- - extern void miGetPts(), miRoundCap(), miOneSegWide();
- X extern int miPtToAngle();
- X extern RegionPtr miRegionCreate();
- X extern void miRegionInit();
- --- 59,64 ----
- *** /tmp/,RCSt1a23007 Sun Aug 23 13:30:17 1992
- --- mit/server/ddx/cfb/cfbply1rct.c Mon May 18 14:38:18 1992
- ***************
- *** 1,5 ****
- X /*
- ! * $XConsortium: cfbply1rct.c,v 1.9 91/07/09 16:09:23 rws Exp $
- X *
- X * Copyright 1990 Massachusetts Institute of Technology
- X *
- --- 1,5 ----
- X /*
- ! * $XConsortium: cfbply1rct.c,v 1.11 92/05/18 14:37:44 keith Exp $
- X *
- X * Copyright 1990 Massachusetts Institute of Technology
- X *
- ***************
- *** 67,77 ****
- X int nmiddle;
- X RROP_DECLARE
- X
- ! if (mode == CoordModePrevious || shape != Convex)
- X {
- X miFillPolygon (pDrawable, pGC, shape, mode, count, ptsIn);
- X return;
- X }
- X devPriv = (cfbPrivGC *)(pGC->devPrivates[cfbGCPrivateIndex].ptr);
- X origin = *((int *) &pDrawable->x);
- X origin -= (origin & 0x8000) << 1;
- --- 67,78 ----
- X int nmiddle;
- X RROP_DECLARE
- X
- ! if (mode == CoordModePrevious)
- X {
- X miFillPolygon (pDrawable, pGC, shape, mode, count, ptsIn);
- X return;
- X }
- +
- X devPriv = (cfbPrivGC *)(pGC->devPrivates[cfbGCPrivateIndex].ptr);
- X origin = *((int *) &pDrawable->x);
- X origin -= (origin & 0x8000) << 1;
- ***************
- *** 84,103 ****
- X maxy = 0;
- X vertex2p = (int *) ptsIn;
- X endp = vertex2p + count;
- ! while (count--)
- X {
- ! c = *vertex2p;
- ! clip |= (c - vertex1) | (vertex2 - c);
- ! c = intToY(c);
- ! if (c < y)
- ! {
- ! y = c;
- ! vertex1p = vertex2p;
- ! }
- ! vertex2p++;
- ! if (c > maxy)
- ! maxy = c;
- X }
- X if (y == maxy)
- X return;
- X
- --- 85,151 ----
- X maxy = 0;
- X vertex2p = (int *) ptsIn;
- X endp = vertex2p + count;
- ! if (shape == Convex)
- X {
- ! while (count--)
- ! {
- ! c = *vertex2p;
- ! clip |= (c - vertex1) | (vertex2 - c);
- ! c = intToY(c);
- ! if (c < y)
- ! {
- ! y = c;
- ! vertex1p = vertex2p;
- ! }
- ! vertex2p++;
- ! if (c > maxy)
- ! maxy = c;
- ! }
- X }
- + else
- + {
- + int yFlip = 0;
- + dx1 = 1;
- + x2 = -1;
- + x1 = -1;
- + while (count--)
- + {
- + c = *vertex2p;
- + clip |= (c - vertex1) | (vertex2 - c);
- + c = intToY(c);
- + if (c < y)
- + {
- + y = c;
- + vertex1p = vertex2p;
- + }
- + vertex2p++;
- + if (c > maxy)
- + maxy = c;
- + if (c == x1)
- + continue;
- + if (dx1 > 0)
- + {
- + if (x2 < 0)
- + x2 = c;
- + else
- + dx2 = dx1 = (c - x1) >> 31;
- + }
- + else
- + if ((c - x1) >> 31 != dx1)
- + {
- + dx1 = ~dx1;
- + yFlip++;
- + }
- + x1 = c;
- + }
- + x1 = (x2 - c) >> 31;
- + if (x1 != dx1)
- + yFlip++;
- + if (x1 != dx2)
- + yFlip++;
- + if (yFlip != 2)
- + clip = 0x8000;
- + }
- X if (y == maxy)
- X return;
- X
- ***************
- *** 163,169 ****
- X vertex1p = endp;
- X c = *--vertex1p;
- X Setup (c,x1,vertex1,dx1,dy1,e1,sign1,step1)
- ! } while (y == intToY(vertex1));
- X h = dy1;
- X }
- X else
- --- 211,217 ----
- X vertex1p = endp;
- X c = *--vertex1p;
- X Setup (c,x1,vertex1,dx1,dy1,e1,sign1,step1)
- ! } while (y >= intToY(vertex1));
- X h = dy1;
- X }
- X else
- ***************
- *** 179,185 ****
- X if (vertex2p == endp)
- X vertex2p = (int *) ptsIn;
- X Setup (c,x2,vertex2,dx2,dy2,e2,sign2,step2)
- ! } while (y == intToY(vertex2));
- X if (dy2 < h)
- X h = dy2;
- X }
- --- 227,233 ----
- X if (vertex2p == endp)
- X vertex2p = (int *) ptsIn;
- X Setup (c,x2,vertex2,dx2,dy2,e2,sign2,step2)
- ! } while (y >= intToY(vertex2));
- X if (dy2 < h)
- X h = dy2;
- X }
- ***************
- *** 202,209 ****
- X l = x2;
- X r = x1;
- X }
- X c = l & PIM;
- ! addr = (unsigned long *) (((char *) addrl) + (l - c));
- X if (c + nmiddle < PPW)
- X {
- X mask = SCRRIGHT (bits,c) ^ SCRRIGHT (bits,c+nmiddle);
- --- 250,267 ----
- X l = x2;
- X r = x1;
- X }
- + #if PPW > 1
- X c = l & PIM;
- ! l -= c;
- ! #endif
- ! #if PWSH > 2
- ! l = l >> (PWSH - 2);
- ! #endif
- ! #if PWSH < 2
- ! l = l << (2 - PWSH);
- ! #endif
- ! addr = (unsigned long *) (((char *) addrl) + l);
- ! #if PPW > 1
- X if (c + nmiddle < PPW)
- X {
- X mask = SCRRIGHT (bits,c) ^ SCRRIGHT (bits,c+nmiddle);
- ***************
- *** 218,230 ****
- --- 276,291 ----
- X nmiddle += c - PPW;
- X addr++;
- X }
- + #endif
- X nmiddle >>= PWSH;
- X while (--nmiddle >= 0) {
- X RROP_SOLID(addr); addr++;
- X }
- + #if PPW > 1
- X if (mask = ~SCRRIGHT(bits, r & PIM))
- X RROP_SOLID_MASK(addr,mask);
- X }
- + #endif
- X if (!--h)
- X break;
- X addrl = AddrYPlus (addrl, 1);
- SHAR_EOF
- echo 'File fix-17 is complete' &&
- chmod 0644 fix-17 ||
- echo 'restore of fix-17 failed'
- Wc_c="`wc -c < 'fix-17'`"
- test 55119 -eq "$Wc_c" ||
- echo 'fix-17: original size 55119, current size' "$Wc_c"
- rm -f _shar_wnt_.tmp
- fi
- rm -f _shar_seq_.tmp
- echo You have unpacked the last part
- exit 0
- --
- Senior Systems Scientist mail: dcmartin@msi.com
- Molecular Simulations, Inc. uucp: uunet!dcmartin
- 796 North Pastoria Avenue at&t: 408/522-9236
- Sunnyvale, California 94086 fax: 408/732-0831
-