| 790 | 
  | 
        dnew.ncomp = rm->ncomp; | 
| 791 | 
  | 
        if (!rmx_prepare(&dnew)) | 
| 792 | 
  | 
                return(0); | 
| 793 | 
< | 
        rmx_addinfo(&dnew, rm->info); | 
| 793 | 
> | 
        dnew.info = rm->info; rm->info = NULL; | 
| 794 | 
  | 
        dnew.dtype = rm->dtype; | 
| 795 | 
  | 
        copycolor(dnew.cexp, rm->cexp); | 
| 796 | 
  | 
        memcpy(dnew.wlpart, rm->wlpart, sizeof(dnew.wlpart)); | 
| 1036 | 
  | 
                        case 1: | 
| 1037 | 
  | 
                            setcolor(cv, dp[0], dp[0], dp[0]); | 
| 1038 | 
  | 
                            break; | 
| 1039 | 
< | 
                        default: { | 
| 1039 | 
> | 
                        default: | 
| 1040 | 
> | 
                            if (sizeof(COLORV) == sizeof(rmx_dtype)) { | 
| 1041 | 
> | 
                                scolor2color(cv, (const COLORV *)dp, | 
| 1042 | 
> | 
                                                rm->ncomp, rm->wlpart); | 
| 1043 | 
> | 
                            } else { | 
| 1044 | 
  | 
                                COLORV  scol[MAXCOMP]; | 
| 1045 | 
< | 
                                int     k; | 
| 1046 | 
< | 
                                for (k = rm->ncomp; k--; ) | 
| 1043 | 
< | 
                                        scol[k] = dp[k]; | 
| 1045 | 
> | 
                                int     k = rm->ncomp; | 
| 1046 | 
> | 
                                while (k--) scol[k] = dp[k]; | 
| 1047 | 
  | 
                                scolor2color(cv, scol, rm->ncomp, rm->wlpart); | 
| 1048 | 
< | 
                            } break; | 
| 1048 | 
> | 
                            } | 
| 1049 | 
> | 
                            break; | 
| 1050 | 
  | 
                        } | 
| 1051 | 
  | 
                    } | 
| 1052 | 
  | 
        } |