Changeset 3569
- Timestamp:
- Mar 25, 2013, 12:21:17 AM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/packages/vizservers/nanovis/VtkReader.cpp
r3558 r3569 224 224 } 225 225 } else if (sscanf(start, "DIMENSIONS %d %d %d", &nx, &ny, &nz) == 3) { 226 if (nx <= 0 || ny <= 0 || nz <= 0) { 227 result.error("Found non-positive dimensions"); 228 return NULL; 229 } 226 230 // found dimensions 227 231 } else if (sscanf(start, "ORIGIN %lg %lg %lg", &x0, &y0, &z0) == 3) { 228 232 // found origin 229 233 } else if (sscanf(start, "SPACING %lg %lg %lg", &dx, &dy, &dz) == 3) { 234 if ((nx > 1 && dx == 0.0) || (ny > 1 && dy == 0.0) || (nz > 1 && dz == 0.0)) { 235 result.error("Found zero spacing for dimension"); 236 return NULL; 237 } 230 238 // found cell spacing 231 239 } else if (sscanf(start, "POINT_DATA %d", &npts) == 1) { 232 if (npts != nx * ny * nz) {240 if (npts < 1 || npts != nx * ny * nz) { 233 241 result.addError("Error in data stream: unexpected number of point data: %d", npts); 234 242 return NULL; … … 321 329 } 322 330 323 if (isRect < 0 || numRead != npts ) {331 if (isRect < 0 || numRead != npts || npts < 1) { 324 332 deleteFieldData(fieldData, ftype); 325 333 result.error("Error in data stream");
Note: See TracChangeset
for help on using the changeset viewer.