SCM Repository
[matrix] Diff of /pkg/Matrix/src/Csparse.c
Diff of /pkg/Matrix/src/Csparse.c
Parent Directory
|
Revision Log
|
Patch
566 |
} |
} |
567 |
else { /* triangular with diag='N'): now drop the diagonal */ |
else { /* triangular with diag='N'): now drop the diagonal */ |
568 |
/* duplicate, since chx will be modified: */ |
/* duplicate, since chx will be modified: */ |
569 |
CHM_SP chx = AS_CHM_SP__(duplicate(x)); |
SEXP xx = PROTECT(duplicate(x)); |
570 |
|
CHM_SP chx = AS_CHM_SP__(xx); |
571 |
int uploT = (*uplo_P(x) == 'U') ? 1 : -1, |
int uploT = (*uplo_P(x) == 'U') ? 1 : -1, |
572 |
Rkind = (chx->xtype != CHOLMOD_PATTERN) ? Real_kind(x) : 0; |
Rkind = (chx->xtype != CHOLMOD_PATTERN) ? Real_kind(x) : 0; |
573 |
R_CheckStack(); |
R_CheckStack(); |
574 |
|
|
575 |
chm_diagN2U(chx, uploT, /* do_realloc */ FALSE); |
chm_diagN2U(chx, uploT, /* do_realloc */ FALSE); |
576 |
|
|
577 |
|
UNPROTECT(1); |
578 |
return chm_sparse_to_SEXP(chx, /*dofree*/ 0/* or 1 ?? */, |
return chm_sparse_to_SEXP(chx, /*dofree*/ 0/* or 1 ?? */, |
579 |
uploT, Rkind, "U", |
uploT, Rkind, "U", |
580 |
GET_SLOT(x, Matrix_DimNamesSym)); |
GET_SLOT(x, Matrix_DimNamesSym)); |
|
Legend:
Removed from v.2771 |
|
changed lines |
|
Added in v.2772 |
|
|