fixed some minor problems with copying conformant arrays,

and a LB that pointed below SP in transfer
This commit is contained in:
ceriel
1987-11-03 15:04:21 +00:00
parent 390181f459
commit f6188debb6
2 changed files with 8 additions and 7 deletions

View File

@@ -37,13 +37,13 @@ _copy_array(p, a)
char dummy;
ppdescr--;
sz = (((*ppdescr)->highminlow + 1) * (*ppdescr)->size +
(EM_WSIZE -1)) & ~ (EM_WSIZE - 1);
sz = ((*ppdescr)->highminlow + 1) * (*ppdescr)->size;
if ((char *) &a - (char *) &dummy > 0) {
(*ppdescr)->addr = q = (char *) &a;
}
else (*ppdescr)->addr = q = (char *) &a - sz;
else (*ppdescr)->addr = q = (char *) &a -
((sz + (EM_WSIZE - 1)) & ~ (EM_WSIZE - 1));
while (sz--) *q++ = *p++;
}