ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/common/tonemap.c
(Generate patch)

Comparing ray/src/common/tonemap.c (file contents):
Revision 3.41 by greg, Thu Jan 7 19:13:57 2021 UTC vs.
Revision 3.43 by greg, Fri Feb 5 01:07:28 2021 UTC

# Line 499 | Line 499 | double Ldmax
499          if ((histo == NULL) | (cumf == NULL))
500                  returnErr(TM_E_NOMEM);
501          cumf[histlen+1] = 1.;           /* guard for assignment code */
502 <        for (i = histlen; i--; )        /* make malleable copy */
503 <                histo[i] = tms->histo[i];
502 >                                        /* make malleable copy */
503 >        memcpy((MEM_PTR)histo, (MEM_PTR)tms->histo, histlen*sizeof(HIST_TYP));
504          do {                            /* iterate to solution */
505                  sum = 0;                /* cumulative probability */
506                  for (i = 0; i < histlen; i++) {
# Line 581 | Line 581 | int    len
581                                  lv = tms->mbrmax;
582                          li = tms->lumap[lv - tms->mbrmin];
583                  }
584 <                if (cs == TM_NOCHROM)
585 <                        *ps++ = li>=TM_BRES ? 255 : (int)(256*li/TM_BRES);
586 <                else {
584 >                if (cs == TM_NOCHROM) {
585 > #if !(TM_BRES & 0xff)
586 >                        *ps++ = li>=TM_BRES ? 255 : li/(TM_BRES>>8);
587 > #else
588 >                        *ps++ = li>=TM_BRES ? 255 : (li<<8)/TM_BRES;
589 > #endif
590 >                } else {
591                          pv = *cs++ * li / tms->cdiv[RED];
592                          *ps++ = pv>255 ? 255 : pv;
593                          pv = *cs++ * li / tms->cdiv[GRN];
# Line 597 | Line 601 | int    len
601  
602  
603   TMstruct *
604 < tmDup(                          /* duplicate top tone mapping */
604 > tmDup(                          /* duplicate tone mapping */
605   TMstruct        *tms
606   )
607   {

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines