Changeset 12915


Ignore:
Timestamp:
08/06/12 15:34:22 (13 years ago)
Author:
jschierm
Message:

Implementation of xNew and xDelete in KML classes.

Location:
issm/trunk-jpl/src/c/classes/objects/KML
Files:
22 edited

Legend:

Unmodified
Added
Removed
  • issm/trunk-jpl/src/c/classes/objects/KML/KMLFileReadUtils.cpp

    r12912 r12915  
    2929        int     c;
    3030        int     ibuf=0,buflen=1024,bufblk=1024;
    31         char    *buffer=NULL,*bufferc=NULL;
    32 
    33         buffer=(char *) xmalloc(buflen*sizeof(char));
     31        char    *buffer=NULL,*bufferc=NULL,**pcom2=NULL;
     32
     33        buffer=xNew<char>(buflen);
    3434        buffer[0]='\0';
    3535
     
    5757                                        if (pncom && ppcom) {
    5858                                                (*pncom)++;
    59                                                 *ppcom=(char **) xrealloc(*ppcom,*pncom*sizeof(char*));
     59                                                pcom2=xNew<char*>(*pncom);
     60                                                memcpy(pcom2,*ppcom,(*pncom-1)*sizeof(char*));
     61                                                xDelete<char*>(*ppcom);
     62                                                *ppcom=pcom2;
     63                                                pcom2=NULL;
     64//                                              *ppcom=(char **) xrealloc(*ppcom,*pncom*sizeof(char*));
    6065                                                (*ppcom)[*pncom-1]=bufferc;
    6166                                        }
    6267                                        else
    63                                                 xfree((void**)&bufferc);
     68                                                xDelete<char>(bufferc);
    6469                                        inew=1;
    6570                                        continue;
     
    98103                                        if (pncom && ppcom) {
    99104                                                (*pncom)++;
    100                                                 *ppcom=(char **) xrealloc(*ppcom,*pncom*sizeof(char*));
     105                                                pcom2=xNew<char*>(*pncom);
     106                                                memcpy(pcom2,*ppcom,(*pncom-1)*sizeof(char*));
     107                                                xDelete<char*>(*ppcom);
     108                                                *ppcom=pcom2;
     109                                                pcom2=NULL;
     110//                                              *ppcom=(char **) xrealloc(*ppcom,*pncom*sizeof(char*));
    101111                                                (*ppcom)[*pncom-1]=bufferc;
    102112                                        }
    103113                                        else
    104                                                 xfree((void**)&bufferc);
     114                                                xDelete<char>(bufferc);
    105115                        }
    106116                        else {
     
    133143
    134144        if (!ibuf)
    135                 xfree((void**)&buffer);
     145                xDelete<char>(buffer);
    136146
    137147        return(buffer);
     
    149159        char*   buffer=NULL;
    150160
    151         buffer=(char *) xmalloc(buflen*sizeof(char));
     161        buffer=xNew<char>(buflen);
    152162        buffer[0]='\0';
    153163
     
    172182                                for (i=ibuf-1; i>=0; i--)
    173183                                        ungetc(buffer[i],fid);
    174                                 xfree((void**)&buffer);
     184                                xDelete<char>(buffer);
    175185                                return(buffer);
    176186                        }
     
    197207
    198208        if (!ibuf)
    199                 xfree((void**)&buffer);
     209                xDelete<char>(buffer);
    200210
    201211        return(buffer);
     
    209219/*  add the specified character to the token buffer  */
    210220
    211         char*   buffer=NULL;
     221        char*   buffer2=NULL;
    212222
    213223/*  check buffer length and realloc if necessary  */
     
    215225        if (*pibuf+2 > *pbuflen) {
    216226                *pbuflen+=bufblk;
    217                 *pbuffer=(char *) xrealloc(*pbuffer,*pbuflen*sizeof(char));
     227                buffer2=xNew<char>(*pbuflen);
     228                memcpy(buffer2,*pbuffer,(*pbuflen-bufblk)*sizeof(char));
     229                xDelete<char>(*pbuffer);
     230                *pbuffer=buffer2;
     231                buffer2=NULL;
     232//              *pbuffer=(char *) xrealloc(*pbuffer,*pbuflen*sizeof(char));
    218233        }
    219234
     
    248263/*  strtok modifies ktag, so work on copy  */
    249264
    250         ktagi=(char *) xmalloc((strlen(ktag)+1)*sizeof(char));
     265        ktagi=xNew<char>(strlen(ktag)+1);
    251266        memcpy(ktagi,ktag,(strlen(ktag)+1)*sizeof(char));
    252267
     
    258273        if (!pname) {
    259274                if (maxlen)
    260                         pname=(char *) xmalloc((maxlen       +1)*sizeof(char));
    261                 else
    262                         pname=(char *) xmalloc((strlen(ktokn)+1)*sizeof(char));
     275                        pname=xNew<char>(maxlen       +1);
     276                else
     277                        pname=xNew<char>(strlen(ktokn)+1);
    263278        }
    264279
     
    271286                memcpy(pname,ktokn,(strlen(ktokn)+1)*sizeof(char));
    272287
    273         xfree((void**)&ktagi);
     288        xDelete<char>(ktagi);
    274289
    275290        if (m)
     
    293308/*  strtok modifies ktag, so work on copy  */
    294309
    295         ktagi=(char *) xmalloc((strlen(ktag)+1)*sizeof(char));
     310        ktagi=xNew<char>(strlen(ktag)+1);
    296311        memcpy(ktagi,ktag,(strlen(ktag)+1)*sizeof(char));
    297312
     
    315330        }
    316331
    317         xfree((void**)&ktagi);
     332        xDelete<char>(ktagi);
    318333
    319334/*  check for xml declaration, dtd declaration, or solo tag  */
     
    343358
    344359        sscanf(kstr,"%d",pival);
    345         xfree((void**)&kstr);
     360        xDelete<char>(kstr);
    346361
    347362/*  get additional token and compare to closing tag  */
     
    355370                  {_error2_("KMLFileTokenParse -- Missing closing tag for " << ktag << ".\n");}
    356371                else
    357                         xfree((void**)&kstr);
     372                        xDelete<char>(kstr);
    358373
    359374//      _pprintLine_("KMLFileTokenParse -- " << ktag << "=" << *pival << ".");
     
    377392        sscanf(kstr,"%d",&ival);
    378393        *pbval=(bool)ival;
    379         xfree((void**)&kstr);
     394        xDelete<char>(kstr);
    380395
    381396/*  get additional token and compare to closing tag  */
     
    389404                  {_error2_("KMLFileTokenParse -- Missing closing tag for " << ktag << ".\n");}
    390405                else
    391                         xfree((void**)&kstr);
     406                        xDelete<char>(kstr);
    392407
    393408//      _pprintLine_("KMLFileTokenParse -- " << ktag << "=" << (*pbval ? "true" : "false") << ".");
     
    422437        if (!pstr) {
    423438                if (maxlen)
    424                         pstr=(char *) xmalloc((maxlen      +1)*sizeof(char));
    425                 else
    426                         pstr=(char *) xmalloc((strlen(kstr)+1)*sizeof(char));
     439                        pstr=xNew<char>(maxlen      +1);
     440                else
     441                        pstr=xNew<char>(strlen(kstr)+1);
    427442        }
    428443
     
    435450                memcpy(pstr,kstr,(strlen(kstr)+1)*sizeof(char));
    436451
    437         xfree((void**)&kstr);
     452        xDelete<char>(kstr);
    438453
    439454        if (m)
     
    450465                  {_error2_("KMLFileTokenParse -- Missing closing tag for " << ktag << ".\n");}
    451466                else
    452                         xfree((void**)&kstr);
     467                        xDelete<char>(kstr);
    453468
    454469//      _pprintLine_("KMLFileTokenParse -- " << ktag << "=\"" << pstr << "\".");
     
    472487
    473488        sscanf(kstr,"%g",pfval);
    474         xfree((void**)&kstr);
     489        xDelete<char>(kstr);
    475490
    476491/*  get additional token and compare to closing tag  */
     
    484499                  {_error2_("KMLFileTokenParse -- Missing closing tag for " << ktag << ".\n");}
    485500                else
    486                         xfree((void**)&kstr);
     501                        xDelete<char>(kstr);
    487502
    488503//      _pprintLine_("KMLFileTokenParse -- " << ktag << "=" << *pfval << ".");
     
    506521
    507522        sscanf(kstr,"%lg",pdval);
    508         xfree((void**)&kstr);
     523        xDelete<char>(kstr);
    509524
    510525/*  get additional token and compare to closing tag  */
     
    518533                  {_error2_("KMLFileTokenParse -- Missing closing tag for " << ktag << ".\n");}
    519534                else
    520                         xfree((void**)&kstr);
     535                        xDelete<char>(kstr);
    521536
    522537//      _pprintLine_("KMLFileTokenParse -- " << ktag << "=" << *pdval << ".");
     
    544559        if (!*pdval)
    545560                if (maxlen)
    546                         *pdval=(double *) xmalloc(maxlen              *sizeof(double));
    547                 else
    548                         *pdval=(double *) xmalloc(((strlen(kstr)+1)/2)*sizeof(double));
     561                        *pdval=xNew<IssmDouble>(maxlen            );
     562                else
     563                        *pdval=xNew<IssmDouble>((strlen(kstr)+1)/2);
    549564
    550565/*  loop through string to get all values  */
     
    558573                ktok=strtok(NULL,delim);
    559574        }
    560         xfree((void**)&kstr);
    561 
    562         if (!maxlen)
    563                 *pdval=(double *) xrealloc(*pdval,(i+1)*sizeof(double));
     575        xDelete<char>(kstr);
     576
     577//      if (!maxlen)
     578//              *pdval=(double *) xrealloc(*pdval,(i+1)*sizeof(double));
    564579
    565580        if (m)
     
    576591                  {_error2_("KMLFileTokenParse -- Missing closing tag for " << ktag << ".\n");}
    577592                else
    578                         xfree((void**)&kstr);
     593                        xDelete<char>(kstr);
    579594
    580595//      _pprintLine_("KMLFileTokenParse -- " << ktag << "=...");
     
    604619        if (!*pdval)
    605620                if (maxlen)
    606                         *pdval=(double *) xmalloc((maxlen*n)          *sizeof(double));
    607                 else
    608                         *pdval=(double *) xmalloc(((strlen(kstr)+1)/2)*sizeof(double));
     621                        *pdval=xNew<IssmDouble>(maxlen*n          );
     622                else
     623                        *pdval=xNew<IssmDouble>((strlen(kstr)+1)/2);
    609624
    610625/*  loop through string to get all values  */
     
    619634                ktok=strtok(NULL,delim);
    620635        }
    621         xfree((void**)&kstr);
    622 
    623         if (!maxlen)
    624                 *pdval=(double *) xrealloc(*pdval,((i+1)*n)*sizeof(double));
     636        xDelete<char>(kstr);
     637
     638//      if (!maxlen)
     639//              *pdval=(double *) xrealloc(*pdval,((i+1)*n)*sizeof(double));
    625640
    626641        if (m)
     
    640655                  {_error2_("KMLFileTokenParse -- Missing closing tag for " << ktag << ".\n");}
    641656                else
    642                         xfree((void**)&kstr);
     657                        xDelete<char>(kstr);
    643658
    644659//      _pprintLine_("KMLFileTokenParse -- " << ktag << "=...");
     
    668683                                 (!strncmp(&(kstr[2]),&(ktag[1]),(strcspn(ktag," >")-1)/sizeof(char)))) {
    669684                        _pprintLine_("KMLFileTagSkip -- closing tag " << kstr << ".");
    670                         xfree((void**)&kstr);
     685                        xDelete<char>(kstr);
    671686                        return(0);
    672687                }
     
    688703                }
    689704
    690                 xfree((void**)&kstr);
     705                xDelete<char>(kstr);
    691706        }
    692707
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_Attribute.cpp

    r12835 r12915  
    3232KML_Attribute::~KML_Attribute(){
    3333
    34         if (name      ) xfree((void**)&name);
    35         if (value     ) xfree((void**)&value);
     34        if (name      ) xDelete<char>(name);
     35        if (value     ) xDelete<char>(value);
    3636
    3737}
     
    100100void  KML_Attribute::Alloc(const char* namei,const char* valuei){
    101101
    102         name =(char *) xmalloc((strlen(namei )+1)*sizeof(char));
     102        name =xNew<char>(strlen(namei )+1);
    103103        memcpy(name,namei,(strlen(namei)+1)*sizeof(char));
    104104
    105         value=(char *) xmalloc((strlen(valuei)+1)*sizeof(char));
     105        value=xNew<char>(strlen(valuei)+1);
    106106        memcpy(value,valuei,(strlen(valuei)+1)*sizeof(char));
    107107
     
    121121
    122122        if (!value || !strlen(value)) {
    123                 *pvalueo=(char *) xmalloc((strlen(deflt)+1)*sizeof(char));
     123                *pvalueo=xNew<char>(strlen(deflt)+1);
    124124                memcpy(*pvalueo,deflt,(strlen(deflt)+1)*sizeof(char));
    125125        }
    126126        else {
    127                 *pvalueo=(char *) xmalloc((strlen(value)+1)*sizeof(char));
     127                *pvalueo=xNew<char>(strlen(value)+1);
    128128                memcpy(*pvalueo,value,(strlen(value)+1)*sizeof(char));
    129129        }
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_Comment.cpp

    r12835 r12915  
    3131KML_Comment::~KML_Comment(){
    3232
    33         if (value     ) xfree((void**)&value);
     33        if (value     ) xDelete<char>(value);
    3434
    3535}
     
    9494void  KML_Comment::Alloc(const char* valuei){
    9595
    96         value=(char *) xmalloc((strlen(valuei)+1)*sizeof(char));
     96        value=xNew<char>(strlen(valuei)+1);
    9797        memcpy(value,valuei,(strlen(valuei)+1)*sizeof(char));
    9898
     
    111111void  KML_Comment::Get(char** pvalueo){
    112112
    113         *pvalueo=(char *) xmalloc((strlen(value)+1)*sizeof(char));
     113        *pvalueo=xNew<char>(strlen(value)+1);
    114114        memcpy(*pvalueo,value,(strlen(value)+1)*sizeof(char));
    115115
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_Container.cpp

    r12835 r12915  
    116116
    117117        if      (!strncmp(kstr,"</Container",11)) {
    118                 xfree((void**)&kstr);
     118                xDelete<char>(kstr);
    119119                return;
    120120        }
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_Document.cpp

    r12835 r12915  
    102102                                                          &ncom,&pcom)) {
    103103                if      (!strncmp(kstri,"</Document",10)) {
    104                         xfree((void**)&kstri);
     104                        xDelete<char>(kstri);
    105105                        break;
    106106                }
     
    113113                        KML_Container::Read(fid,kstri);
    114114
    115                 xfree((void**)&kstri);
     115                xDelete<char>(kstri);
    116116        }
    117117
     
    119119
    120120        for (ncom; ncom>0; ncom--)
    121                 xfree((void**)&(pcom[ncom-1]));
    122         xfree((void**)&pcom);
     121                xDelete<char>(pcom[ncom-1]);
     122        xDelete<char*>(pcom);
    123123
    124124        return;
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_File.cpp

    r12835 r12915  
    103103                                                          &ncom,&pcom)) {
    104104                if      (!strncmp(kstri,"</kml", 5)) {
    105                         xfree((void**)&kstri);
     105                        xDelete<char>(kstri);
    106106                        break;
    107107                }
     
    114114                        KML_Object::Read(fid,kstri);
    115115
    116                 xfree((void**)&kstri);
     116                xDelete<char>(kstri);
    117117        }
    118118
     
    120120
    121121        for (ncom; ncom>0; ncom--)
    122                 xfree((void**)&(pcom[ncom-1]));
    123         xfree((void**)&pcom);
     122                xDelete<char>(pcom[ncom-1]);
     123        xDelete<char*>(pcom);
    124124
    125125        return;
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_Folder.cpp

    r12835 r12915  
    102102                                                          &ncom,&pcom)) {
    103103                if      (!strncmp(kstri,"</Folder", 8)) {
    104                         xfree((void**)&kstri);
     104                        xDelete<char>(kstri);
    105105                        break;
    106106                }
     
    113113                        KML_Container::Read(fid,kstri);
    114114
    115                 xfree((void**)&kstri);
     115                xDelete<char>(kstri);
    116116        }
    117117
     
    119119
    120120        for (ncom; ncom>0; ncom--)
    121                 xfree((void**)&(pcom[ncom-1]));
    122         xfree((void**)&pcom);
     121                xDelete<char>(pcom[ncom-1]);
     122        xDelete<char*>(pcom);
    123123
    124124        return;
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_GroundOverlay.cpp

    r12835 r12915  
    127127                                                          &ncom,&pcom)) {
    128128                if      (!strncmp(kstri,"</GroundOverlay",15)) {
    129                         xfree((void**)&kstri);
     129                        xDelete<char>(kstri);
    130130                        break;
    131131                }
     
    151151                        KML_Overlay::Read(fid,kstri);
    152152
    153                 xfree((void**)&kstri);
     153                xDelete<char>(kstri);
    154154        }
    155155
     
    157157
    158158        for (ncom; ncom>0; ncom--)
    159                 xfree((void**)&(pcom[ncom-1]));
    160         xfree((void**)&pcom);
     159                xDelete<char>(pcom[ncom-1]);
     160        xDelete<char*>(pcom);
    161161
    162162        return;
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_Icon.cpp

    r12835 r12915  
    141141                                                          &ncom,&pcom)) {
    142142                if      (!strncmp(kstri,"</Icon", 6)) {
    143                         xfree((void**)&kstri);
     143                        xDelete<char>(kstri);
    144144                        break;
    145145                }
     
    169169                        KML_Object::Read(fid,kstri);
    170170
    171                 xfree((void**)&kstri);
     171                xDelete<char>(kstri);
    172172        }
    173173
     
    175175
    176176        for (ncom; ncom>0; ncom--)
    177                 xfree((void**)&(pcom[ncom-1]));
    178         xfree((void**)&pcom);
     177                xDelete<char>(pcom[ncom-1]);
     178        xDelete<char*>(pcom);
    179179
    180180        return;
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_LatLonBox.cpp

    r12835 r12915  
    117117                                                          &ncom,&pcom)) {
    118118                if      (!strncmp(kstri,"</LatLonBox",11)) {
    119                         xfree((void**)&kstri);
     119                        xDelete<char>(kstri);
    120120                        break;
    121121                }
     
    149149                        KML_Object::Read(fid,kstri);
    150150
    151                 xfree((void**)&kstri);
     151                xDelete<char>(kstri);
    152152        }
    153153
     
    155155
    156156        for (ncom; ncom>0; ncom--)
    157                 xfree((void**)&(pcom[ncom-1]));
    158         xfree((void**)&pcom);
     157                xDelete<char>(pcom[ncom-1]);
     158        xDelete<char*>(pcom);
    159159
    160160        return;
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_LineString.cpp

    r12835 r12915  
    137137                                                          &ncom,&pcom)) {
    138138                if      (!strncmp(kstri,"</LineString",12)) {
    139                         xfree((void**)&kstri);
     139                        xDelete<char>(kstri);
    140140                        break;
    141141                }
     
    165165                        KML_Geometry::Read(fid,kstri);
    166166
    167                 xfree((void**)&kstri);
     167                xDelete<char>(kstri);
    168168        }
    169169
     
    171171
    172172        for (ncom; ncom>0; ncom--)
    173                 xfree((void**)&(pcom[ncom-1]));
    174         xfree((void**)&pcom);
     173                xDelete<char>(pcom[ncom-1]);
     174        xDelete<char*>(pcom);
    175175
    176176        return;
     
    186186/*  extract latitude and longitude into vectors  */
    187187
    188         lat=(double *) xmalloc(ncoord*sizeof(double));
    189         lon=(double *) xmalloc(ncoord*sizeof(double));
     188        lat=xNew<IssmDouble>(ncoord);
     189        lon=xNew<IssmDouble>(ncoord);
    190190        for (i=0; i<ncoord; i++) {
    191191                lon[i]=coords[3*i+0];
     
    195195/*  convert latitude and longitude to x and y  */
    196196
    197         x  =(double *) xmalloc(ncoord*sizeof(double));
    198         y  =(double *) xmalloc(ncoord*sizeof(double));
     197        x  =xNew<IssmDouble>(ncoord);
     198        y  =xNew<IssmDouble>(ncoord);
    199199        Ll2xyx(x,y,lat,lon,ncoord,sgn,cm,sp);
    200200
     
    221221        fprintf(fid,"\n");
    222222
    223         xfree((void**)&y);
    224         xfree((void**)&x);
    225         xfree((void**)&lon);
    226         xfree((void**)&lat);
    227 
    228         return;
    229 }
    230 /*}}}*/
     223        xDelete<IssmDouble>(y);
     224        xDelete<IssmDouble>(x);
     225        xDelete<IssmDouble>(lon);
     226        xDelete<IssmDouble>(lat);
     227
     228        return;
     229}
     230/*}}}*/
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_LineStyle.cpp

    r12835 r12915  
    109109                                                          &ncom,&pcom)) {
    110110                if      (!strncmp(kstri,"</LineStyle",11)) {
    111                         xfree((void**)&kstri);
     111                        xDelete<char>(kstri);
    112112                        break;
    113113                }
     
    125125                        KML_ColorStyle::Read(fid,kstri);
    126126
    127                 xfree((void**)&kstri);
     127                xDelete<char>(kstri);
    128128        }
    129129
     
    131131
    132132        for (ncom; ncom>0; ncom--)
    133                 xfree((void**)&(pcom[ncom-1]));
    134         xfree((void**)&pcom);
     133                xDelete<char>(pcom[ncom-1]);
     134        xDelete<char*>(pcom);
    135135
    136136        return;
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_LinearRing.cpp

    r12912 r12915  
    159159        this->AddCommnt(ncom,pcom);
    160160
    161         for(ncom;ncom>0;ncom--) xDelete<char>((pcom[ncom-1]));
     161        for(ncom; ncom>0; ncom--)
     162                xDelete<char>(pcom[ncom-1]);
    162163        xDelete<char*>(pcom);
    163164
     
    174175/*  extract latitude and longitude into vectors  */
    175176
    176         lat=xNew<double>(ncoord);
    177         lon=xNew<double>(ncoord);
     177        lat=xNew<IssmDouble>(ncoord);
     178        lon=xNew<IssmDouble>(ncoord);
    178179        for (i=0; i<ncoord; i++) {
    179180                lon[i]=coords[3*i+0];
     
    183184/*  convert latitude and longitude to x and y  */
    184185
    185         x  =xNew<double>(ncoord);
    186         y  =xNew<double>(ncoord);
     186        x  =xNew<IssmDouble>(ncoord);
     187        y  =xNew<IssmDouble>(ncoord);
    187188        Ll2xyx(x,y,lat,lon,ncoord,sgn,cm,sp);
    188189
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_MultiGeometry.cpp

    r12835 r12915  
    136136                                                          &ncom,&pcom)) {
    137137                if      (!strncmp(kstri,"</MultiGeometry",15)) {
    138                         xfree((void**)&kstri);
     138                        xDelete<char>(kstri);
    139139                        break;
    140140                }
     
    177177                        KML_Geometry::Read(fid,kstri);
    178178
    179                 xfree((void**)&kstri);
     179                xDelete<char>(kstri);
    180180        }
    181181
     
    183183
    184184        for (ncom; ncom>0; ncom--)
    185                 xfree((void**)&(pcom[ncom-1]));
    186         xfree((void**)&pcom);
     185                xDelete<char>(pcom[ncom-1]);
     186        xDelete<char*>(pcom);
    187187
    188188        return;
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_Object.cpp

    r12835 r12915  
    304304                katt->Get(pvalue,deflt);
    305305        else {
    306                 *pvalue=(char *) xmalloc((strlen(deflt)+1)*sizeof(char));
     306                *pvalue=xNew<char>(strlen(deflt)+1);
    307307                memcpy(*pvalue,deflt,(strlen(deflt)+1)*sizeof(char));
    308308        }
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_Overlay.cpp

    r12835 r12915  
    106106
    107107        if      (!strncmp(kstr,"</Overlay", 9)) {
    108                 xfree((void**)&kstr);
     108                xDelete<char>(kstr);
    109109                return;
    110110        }
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_Placemark.cpp

    r12835 r12915  
    136136                                                          &ncom,&pcom)) {
    137137                if      (!strncmp(kstri,"</Placemark",11)) {
    138                         xfree((void**)&kstri);
     138                        xDelete<char>(kstri);
    139139                        break;
    140140                }
     
    177177                        KML_Feature::Read(fid,kstri);
    178178
    179                 xfree((void**)&kstri);
     179                xDelete<char>(kstri);
    180180        }
    181181
     
    183183
    184184        for (ncom; ncom>0; ncom--)
    185                 xfree((void**)&(pcom[ncom-1]));
    186         xfree((void**)&pcom);
     185                xDelete<char>(pcom[ncom-1]);
     186        xDelete<char*>(pcom);
    187187
    188188        return;
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_Point.cpp

    r12835 r12915  
    122122                                                          &ncom,&pcom)) {
    123123                if      (!strncmp(kstri,"</Point", 7)) {
    124                         xfree((void**)&kstri);
     124                        xDelete<char>(kstri);
    125125                        break;
    126126                }
     
    140140                        KML_Geometry::Read(fid,kstri);
    141141
    142                 xfree((void**)&kstri);
     142                xDelete<char>(kstri);
    143143        }
    144144
     
    146146
    147147        for (ncom; ncom>0; ncom--)
    148                 xfree((void**)&(pcom[ncom-1]));
    149         xfree((void**)&pcom);
     148                xDelete<char>(pcom[ncom-1]);
     149        xDelete<char*>(pcom);
    150150
    151151        return;
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_PolyStyle.cpp

    r12835 r12915  
    113113                                                          &ncom,&pcom)) {
    114114                if      (!strncmp(kstri,"</PolyStyle",11)) {
    115                         xfree((void**)&kstri);
     115                        xDelete<char>(kstri);
    116116                        break;
    117117                }
     
    133133                        KML_ColorStyle::Read(fid,kstri);
    134134
    135                 xfree((void**)&kstri);
     135                xDelete<char>(kstri);
    136136        }
    137137
     
    139139
    140140        for (ncom; ncom>0; ncom--)
    141                 xfree((void**)&(pcom[ncom-1]));
    142         xfree((void**)&pcom);
     141                xDelete<char>(pcom[ncom-1]);
     142        xDelete<char*>(pcom);
    143143
    144144        return;
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_Polygon.cpp

    r12835 r12915  
    175175                                                          &ncom,&pcom)) {
    176176                if      (!strncmp(kstri,"</Polygon", 9)) {
    177                         xfree((void**)&kstri);
     177                        xDelete<char>(kstri);
    178178                        break;
    179179                }
     
    203203                                                                          &ncom,&pcom)) {
    204204                                if      (!strncmp(kstrj,"</outerBoundaryIs",17)) {
    205                                         xfree((void**)&kstrj);
     205                                        xDelete<char>(kstrj);
    206206                                        break;
    207207                                }
     
    220220                                        KML_Geometry::Read(fid,kstrj);
    221221
    222                                 xfree((void**)&kstrj);
     222                                xDelete<char>(kstrj);
    223223                        }
    224224
     
    230230                                                                          &ncom,&pcom)) {
    231231                                if      (!strncmp(kstrj,"</innerBoundaryIs",17)) {
    232                                         xfree((void**)&kstrj);
     232                                        xDelete<char>(kstrj);
    233233                                        break;
    234234                                }
     
    247247                                        KML_Geometry::Read(fid,kstrj);
    248248
    249                                 xfree((void**)&kstrj);
     249                                xDelete<char>(kstrj);
    250250                        }
    251251
     
    254254                        KML_Geometry::Read(fid,kstri);
    255255
    256                 xfree((void**)&kstri);
     256                xDelete<char>(kstri);
    257257        }
    258258
     
    260260
    261261        for (ncom; ncom>0; ncom--)
    262                 xfree((void**)&(pcom[ncom-1]));
    263         xfree((void**)&pcom);
     262                xDelete<char>(pcom[ncom-1]);
     263        xDelete<char*>(pcom);
    264264
    265265        return;
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_Style.cpp

    r12835 r12915  
    3838        if (list) {
    3939//              delete list;
    40                 if (list      ) xfree((void**)&list);
    4140                list      =NULL;
    4241        }
    4342        if (balloon) {
    4443//              delete balloon;
    45                 if (balloon   ) xfree((void**)&balloon);
    4644                balloon   =NULL;
    4745        }
     
    5654        if (label) {
    5755//              delete label;
    58                 if (label     ) xfree((void**)&label);
    5956                label     =NULL;
    6057        }
    6158        if (icon) {
    6259//              delete icon;
    63                 if (icon      ) xfree((void**)&icon);
    6460                icon      =NULL;
    6561        }
     
    189185                                                          &ncom,&pcom)) {
    190186                if      (!strncmp(kstri,"</Style", 7)) {
    191                         xfree((void**)&kstri);
     187                        xDelete<char>(kstri);
    192188                        break;
    193189                }
     
    230226                        KML_StyleSelector::Read(fid,kstri);
    231227
    232                 xfree((void**)&kstri);
     228                xDelete<char>(kstri);
    233229        }
    234230
     
    236232
    237233        for (ncom; ncom>0; ncom--)
    238                 xfree((void**)&(pcom[ncom-1]));
    239         xfree((void**)&pcom);
    240 
    241         return;
    242 }
    243 /*}}}*/
     234                xDelete<char>(pcom[ncom-1]);
     235        xDelete<char*>(pcom);
     236
     237        return;
     238}
     239/*}}}*/
  • issm/trunk-jpl/src/c/classes/objects/KML/KML_Unknown.cpp

    r12835 r12915  
    3232KML_Unknown::~KML_Unknown(){
    3333
    34         if (name      ) xfree((void**)&name);
    35         if (value     ) xfree((void**)&value);
     34        if (name      ) xDelete<char>(name);
     35        if (value     ) xDelete<char>(value);
    3636
    3737}
     
    7777
    7878        if (value     ) {
    79                 valuei=(char *) xmalloc((strlen(value)+1)*sizeof(char));
     79                valuei=xNew<char>(strlen(value)+1);
    8080                memcpy(valuei,value,(strlen(value)+1)*sizeof(char));
    8181       
     
    8787                if(flag) _pprintLine_("\"");
    8888
    89                 xfree((void**)&valuei);
     89                xDelete<char>(valuei);
    9090        }
    9191    else
     
    108108
    109109        if (value     ) {
    110                 valuei=(char *) xmalloc((strlen(value)+1)*sizeof(char));
     110                valuei=xNew<char>(strlen(value)+1);
    111111                memcpy(valuei,value,(strlen(value)+1)*sizeof(char));
    112112       
     
    117117                        fprintf(filout,"%s  %s\n",indent,vtoken);
    118118
    119                 xfree((void**)&valuei);
     119                xDelete<char>(valuei);
    120120        }
    121121
     
    131131
    132132        char*        kstri;
     133        char*        value2=NULL;
    133134        int          ncom=0;
    134135        char**       pcom=NULL;
     
    155156                                 !strncmp(&kstri[2],name,strlen(name))) {
    156157//                      _pprintLine_("KML_Unknown::Read -- closing name=" << name << ".");
    157                         xfree((void**)&kstri);
     158                        xDelete<char>(kstri);
    158159                        break;
    159160                }
     
    163164                else if (strncmp(kstri,"<",1)) {
    164165                        if (value) {
    165                                 value=(char *) xrealloc(value,(strlen(value)+1+strlen(kstri)+1)*sizeof(char));
     166                                value2=xNew<char>(strlen(value)+1+strlen(kstri)+1);
     167                                memcpy(value2,value,(strlen(value)+1)*sizeof(char));
     168                                xDelete<char>(value);
     169                                value=value2;
     170                                value2=NULL;
     171//                              value=(char *) xrealloc(value,(strlen(value)+1+strlen(kstri)+1)*sizeof(char));
    166172                                strcat(value,nl);
    167173                                strcat(value,kstri);
    168174                        }
    169175                        else {
    170                                 value=(char *) xmalloc((strlen(kstri)+1)*sizeof(char));
     176                                value=xNew<char>(strlen(kstri)+1);
    171177                                memcpy(value,kstri,(strlen(kstri)+1)*sizeof(char));
    172178                        }
     
    176182                        KML_Object::Read(fid,kstri);
    177183
    178                 xfree((void**)&kstri);
     184                xDelete<char>(kstri);
    179185        }
    180186
     
    182188
    183189        for (ncom; ncom>0; ncom--)
    184                 xfree((void**)&(pcom[ncom-1]));
    185         xfree((void**)&pcom);
     190                xDelete<char>(pcom[ncom-1]);
     191        xDelete<char*>(pcom);
    186192
    187193        return;
Note: See TracChangeset for help on using the changeset viewer.