Changeset 1809
- Timestamp:
- 26/01/12 18:44:27 (4 months ago)
- File:
-
- 1 edited
-
trunk/applications/NXconvert/nxconvert_common.cpp (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/applications/NXconvert/nxconvert_common.cpp
r1807 r1809 42 42 static int WriteGroup (int is_definition); 43 43 static int WriteAttributes (int is_definition, int is_group); 44 45 static void clean_string(void* dataBuffer, int dataRank, int dataDimensions[]) 46 { 47 int i, n = 1; 48 for(i=0; i<dataRank; ++i) 49 { 50 n *= dataDimensions[i]; 51 } 52 for(i=0; i<n; ++i) 53 { 54 if (!isprint(((const unsigned char*)dataBuffer)[i])) 55 { 56 ((char*)dataBuffer)[i] = '?'; 57 } 58 } 59 } 44 60 45 61 struct link_to_make … … 187 203 { 188 204 189 int i, n,status, dataType, dataRank, dataDimensions[NX_MAXRANK];205 int i, status, dataType, dataRank, dataDimensions[NX_MAXRANK]; 190 206 static const int slab_start[10] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; 191 207 static const int MAX_DEF_ARRAY_ELEMENTS_PER_DIM = 3; /* doesn't work yet - only 1 element is written */ … … 232 248 if (is_definition && dataType == NX_CHAR) 233 249 { 234 n = 1; 235 for(i=0; i<dataRank; ++i) 236 { 237 n *= dataDimensions[i]; 238 } 239 for(i=0; i<n; ++i) 240 { 241 if (!isprint(((const unsigned char*)dataBuffer)[i])) 242 { 243 ((char*)dataBuffer)[i] = '?'; 244 } 245 } 250 clean_string(dataBuffer, dataRank, dataDimensions); 246 251 } 247 252 if (NXputdata (outId, dataBuffer) != NX_OK) return NX_ERROR; … … 334 339 if (NXmalloc((void**)&attrBuffer, 1, &attrLen, attrType) != NX_OK) return NX_ERROR; 335 340 if (NXgetattr (inId, attrName, attrBuffer, &attrLen , &attrType) != NX_OK) return NX_ERROR; 341 if (is_definition && attrType == NX_CHAR) 342 { 343 clean_string(attrBuffer, 1, &attrLen); 344 } 336 345 if (NXputattr (outId, attrName, attrBuffer, attrLen , attrType) != NX_OK) return NX_ERROR; 337 346 if (NXfree((void**)&attrBuffer) != NX_OK) return NX_ERROR;
Note: See TracChangeset
for help on using the changeset viewer.
