pdlbroadcast.c (PDL-2.082) | : | pdlbroadcast.c (PDL-2.083) | ||
---|---|---|---|---|
skipping to change at line 594 | skipping to change at line 594 | |||
if (PDL_err.error) { | if (PDL_err.error) { | |||
*error_ret = PDL_err; | *error_ret = PDL_err; | |||
return 1; | return 1; | |||
} | } | |||
broadcast->gflags &= ~PDL_BROADCAST_MAGICK_BUSY; | broadcast->gflags &= ~PDL_BROADCAST_MAGICK_BUSY; | |||
return 1; /* DON'T DO BROADCASTLOOP AGAIN */ | return 1; /* DON'T DO BROADCASTLOOP AGAIN */ | |||
} | } | |||
} | } | |||
offsp = pdl_get_threadoffsp_int(broadcast,&thr, &inds, &dims); | offsp = pdl_get_threadoffsp_int(broadcast,&thr, &inds, &dims); | |||
if (!offsp) return -1; | if (!offsp) return -1; | |||
for(j=0; j<broadcast->ndims; j++) | ||||
if (!dims[j]) return 1; /* do nothing if empty */ | ||||
for(j=0; j<npdls; j++) { | for(j=0; j<npdls; j++) { | |||
offsp[j] = PDL_BREPROFFS(broadcast->pdls[j],broadcast->flags[j]); | offsp[j] = PDL_BREPROFFS(broadcast->pdls[j],broadcast->flags[j]); | |||
} | } | |||
if (thr) | if (thr) | |||
for(j=0; j<npdls; j++) | for(j=0; j<npdls; j++) | |||
offsp[j] += PDL_BISTEMP(broadcast->flags[j]) | offsp[j] += PDL_BISTEMP(broadcast->flags[j]) | |||
? thr * broadcast->pdls[j]->dimincs[broadcast->pdls[j]->ndims -1] | ? thr * broadcast->pdls[j]->dimincs[broadcast->pdls[j]->ndims -1] | |||
: PDL_BRC_OFFSET(thr, broadcast) * | : PDL_BRC_OFFSET(thr, broadcast) * | |||
PDL_BRC_INC(broadcast->incs, broadcast->npdls, j, broadca st->mag_nth); | PDL_BRC_INC(broadcast->incs, broadcast->npdls, j, broadca st->mag_nth); | |||
return 0; | return 0; | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 2 lines changed or added |