Changeset 4210
- Timestamp:
- 06/24/10 16:55:03 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
issm/trunk/src/c/objects/Hook.cpp
r4204 r4210 196 196 197 197 /*allocate: */ 198 if (num<0) ISSMERROR("cannot demarshall Hook as num<=0"); 199 this->ids=(int*)xmalloc(num*sizeof(int)); 200 this->offsets=(int*)xmalloc(num*sizeof(int)); 201 202 /*demarshall allocated ids and offsets: */ 203 for (i=0;i<num;i++){ 204 memcpy(&this->ids[i],marshalled_dataset,sizeof(int));marshalled_dataset+=sizeof(int); 205 memcpy(&this->offsets[i],marshalled_dataset,sizeof(int));marshalled_dataset+=sizeof(int); 206 } 207 208 /*nullify object pointers */ 209 this->objects=(Object**)xmalloc(num*sizeof(Object*)); 210 for (i=0;i<num;i++){ 211 this->objects[i]=NULL; 198 if (num<0){ 199 ISSMERROR("cannot demarshall Hook as num<=0"); 200 } 201 else if (num==0){ 202 this->ids=NULL; 203 this->offsets=NULL; 204 this->objects=NULL; 205 } 206 else{ 207 this->ids=(int*)xmalloc(num*sizeof(int)); 208 this->offsets=(int*)xmalloc(num*sizeof(int)); 209 210 /*demarshall allocated ids and offsets: */ 211 for (i=0;i<num;i++){ 212 memcpy(&this->ids[i],marshalled_dataset,sizeof(int));marshalled_dataset+=sizeof(int); 213 memcpy(&this->offsets[i],marshalled_dataset,sizeof(int));marshalled_dataset+=sizeof(int); 214 } 215 216 /*nullify object pointers */ 217 this->objects=(Object**)xmalloc(num*sizeof(Object*)); 218 for (i=0;i<num;i++){ 219 this->objects[i]=NULL; 220 } 212 221 } 213 222
Note:
See TracChangeset
for help on using the changeset viewer.