} else {
StartAttribute(sdump, "value");
}
- for (i=0; i<mffield->count; i++) {
+ for (i=0; mffield && (i<mffield->count); i++) {
if (i) gf_fprintf(sdump->trace, " ");
gf_sg_vrml_mf_get_item(field.far_ptr, field.fieldType, &slot_ptr, i);
/*this is to cope with single MFString which shall appear as SF in XMT*/
}
if (!sdump->XMLDump) gf_fprintf(sdump->trace, "[");
- if (mffield) {
- for (i=0; i<mffield->count; i++) {
- if (i) gf_fprintf(sdump->trace, " ");
- gf_sg_vrml_mf_get_item(field.far_ptr, field.fieldType, &slot_ptr, i);
- gf_dump_vrml_sffield(sdump, sf_type, slot_ptr, 1, node);
- }
+ for (i=0; mffield && (i<mffield->count); i++) {
+ if (i) gf_fprintf(sdump->trace, " ");
+ gf_sg_vrml_mf_get_item(field.far_ptr, field.fieldType, &slot_ptr, i);
+ gf_dump_vrml_sffield(sdump, sf_type, slot_ptr, 1, node);
}
if (!sdump->XMLDump) gf_fprintf(sdump->trace, "]");
sdump->indent--;
DUMP_IND(sdump);
} else {
- for (i=0; i<mffield->count; i++) {
+ for (i=0; mffield && (i<mffield->count); i++) {
if (i) gf_fprintf(sdump->trace, " ");
if (field.fieldType != GF_SG_VRML_MFNODE) {
gf_sg_vrml_mf_get_item(field.far_ptr, field.fieldType, &slot_ptr, i);
} else {
gf_fprintf(sdump->trace, " %s=\"", GetXMTFieldTypeValueName(field.fieldType));
}
- for (i=0; i<mffield->count; i++) {
+ for (i=0; mffield && (i<mffield->count); i++) {
if (i) gf_fprintf(sdump->trace, " ");
if (field.fieldType != GF_SG_VRML_MFNODE) {
gf_sg_vrml_mf_get_item(field.far_ptr, field.fieldType, &slot_ptr, i);
} else {
gf_fprintf(sdump->trace, " %s=\"", GetXMTFieldTypeValueName(field.fieldType));
}
- if (mffield) {
- for (i=0; i<mffield->count; i++) {
- if (i) gf_fprintf(sdump->trace, " ");
- if (field.fieldType != GF_SG_VRML_MFNODE) {
- gf_sg_vrml_mf_get_item(field.far_ptr, field.fieldType, &slot_ptr, i);
- gf_dump_vrml_sffield(sdump, sf_type, slot_ptr, (mffield->count>1) ? 1 : 0, node);
- }
+ for (i=0; mffield && (i<mffield->count); i++) {
+ if (i) gf_fprintf(sdump->trace, " ");
+ if (field.fieldType != GF_SG_VRML_MFNODE) {
+ gf_sg_vrml_mf_get_item(field.far_ptr, field.fieldType, &slot_ptr, i);
+ gf_dump_vrml_sffield(sdump, sf_type, slot_ptr, (mffield->count>1) ? 1 : 0, node);
}
}
gf_fprintf(sdump->trace, "\"/>\n");