Changeset 14671


Ignore:
Timestamp:
04/19/13 15:02:04 (12 years ago)
Author:
Eric.Larour
Message:

CHG: fixed huge segfaults in the Duplicate and Copy methods.

Location:
issm/trunk-jpl/src/c/toolkits/issm
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/toolkits/issm/IssmAbsMat.h

    r14656 r14671  
    4949                virtual void GetLocalSize(int* pM,int* pN)=0;
    5050                virtual void MatMult(IssmAbsVec<doubletype>* X,IssmAbsVec<doubletype>* AX)=0;
    51                 virtual IssmAbsMat* Duplicate(void)=0;
     51                virtual IssmAbsMat<doubletype>* Duplicate(void)=0;
    5252                virtual doubletype* ToSerial(void)=0;
    5353                virtual void SetValues(int m,int* idxm,int n,int* idxn,doubletype* values,InsMode mode)=0;
  • issm/trunk-jpl/src/c/toolkits/issm/IssmAbsVec.h

    r14656 r14671  
    5151                virtual void GetSize(int* pM)=0;
    5252                virtual void GetLocalSize(int* pM)=0;
    53                 virtual IssmAbsVec* Duplicate(void)=0;
     53                virtual IssmAbsVec<doubletype>* Duplicate(void)=0;
    5454                virtual void Set(doubletype value)=0;
    5555                virtual void AXPY(IssmAbsVec* X, doubletype a)=0;
  • issm/trunk-jpl/src/c/toolkits/issm/IssmDenseMat.h

    r14656 r14671  
    204204                /*}}}*/
    205205                /*FUNCTION Duplicate{{{*/
    206                 IssmDenseMat* Duplicate(void){
     206                IssmDenseMat<doubletype>* Duplicate(void){
    207207
    208208                        doubletype dummy=0;
    209209
    210                         return new IssmDenseMat(this->matrix,this->M,this->N,dummy);
     210                        return new IssmDenseMat<doubletype>(this->matrix,this->M,this->N,dummy);
    211211
    212212                }
  • issm/trunk-jpl/src/c/toolkits/issm/IssmMat.h

    r14656 r14671  
    158158                        matrix->MatMult(X->vector,AX->vector);
    159159                } /*}}}*/
    160                 IssmMat* Duplicate(void){ /*{{{*/
     160                IssmMat<doubletype>* Duplicate(void){ /*{{{*/
    161161
    162                         IssmMat* issmmatrix=NULL;
     162                        IssmMat<doubletype>* issmmatrix=NULL;
    163163
    164164                        issmmatrix=new IssmMat<doubletype>();
  • issm/trunk-jpl/src/c/toolkits/issm/IssmMpiDenseMat.h

    r14656 r14671  
    110110                /*}}}*/
    111111                /*FUNCTION Duplicate{{{*/
    112                 IssmMpiDenseMat* Duplicate(void){
     112                IssmMpiDenseMat<doubletype>* Duplicate(void){
    113113                        _error_("not supported yet!");
    114114                }
  • issm/trunk-jpl/src/c/toolkits/issm/IssmMpiVec.h

    r14656 r14671  
    163163                /*}}}*/
    164164                /*FUNCTION Duplicate{{{*/
    165                 IssmMpiVec* Duplicate(void){
    166 
    167                         return new IssmMpiVec(this->vector,this->M);
     165                IssmMpiVec<doubletype>* Duplicate(void){
     166
     167                        return new IssmMpiVec<doubletype>(this->vector,this->M);
    168168
    169169                }
  • issm/trunk-jpl/src/c/toolkits/issm/IssmSeqVec.h

    r14656 r14671  
    164164                /*}}}*/
    165165                /*FUNCTION Duplicate{{{*/
    166                 IssmSeqVec* Duplicate(void){
    167 
    168                         return new IssmSeqVec(this->vector,this->M);
     166                IssmSeqVec<doubletype>* Duplicate(void){
     167
     168                        return new IssmSeqVec<doubletype>(this->vector,this->M);
    169169
    170170                }
Note: See TracChangeset for help on using the changeset viewer.