Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 31 additions & 31 deletions core/src/FieldmlDOM.cpp
Original file line numberDiff line numberDiff line change
Expand Up@@ -123,7 +123,7 @@ xmlMyExternalEntityLoader(const char *URL, const char *ID,
xmlParserInputPtr ret = 0;

if (0 == strcmp(URL, "http://www.cellml.org/tools/cellml_1_1_schema/common/xlink-href.xsd"))
ret = xmlNewStringInputStream(ctxt, (const xmlChar *)HREF_STRING_XSD);
ret = xmlNewStringInputStream(ctxt, (const xmlChar *)HREF_STRING_XSD);
if (ret != NULL)
return(ret);
if (defaultLoader != NULL)
Expand All@@ -143,7 +143,7 @@ static int validate( FieldmlErrorHandler *errorHandler, xmlParserInputBufferPtr
xmlSubstituteEntitiesDefault( 1 );

if (!defaultLoader)
defaultLoader = xmlGetExternalEntityLoader();
defaultLoader = xmlGetExternalEntityLoader();

xmlSetExternalEntityLoader(xmlMyExternalEntityLoader);

Expand DownExpand Up@@ -239,12 +239,12 @@ FmlObjectHandle getObjectAttribute( xmlNodePtr node, const xmlChar *attribute, P
break;
}
if (nodeObjectName)
xmlFree(const_cast<char *>(nodeObjectName));
xmlFree(const_cast<char *>(nodeObjectName));
}

FmlObjectHandle objectHandle = Fieldml_GetObjectByName( state.session, objectName );
if (objectHandle == FML_INVALID_HANDLE)
state.errorHandler->logError( "FieldML Object attribute not found", objectName );
state.errorHandler->logError( "FieldML Object attribute not found", objectName );

xmlFree(const_cast<char *>(objectName));

Expand DownExpand Up@@ -467,7 +467,7 @@ class ArrayDataSourceParser :
int err;

FmlObjectHandle dataSource = Fieldml_CreateArrayDataSource( state.session, name, resource, location, rank );
xmlFree(const_cast<char *>(location));
xmlFree(const_cast<char *>(location));
if( dataSource == FML_INVALID_HANDLE )
{
state.errorHandler->logError( "Malformed ArrayDataSource" );
Expand DownExpand Up@@ -563,26 +563,26 @@ class DataResourceParser :
int err = textStringParser.parseNode( stringDescription, state );
if( err != 0 )
{
xmlFree(const_cast<char *>(name));
xmlFree(const_cast<char *>(name));
return err;
}
}

if( resource == FML_INVALID_HANDLE )
{
state.errorHandler->logError( "Invalid array data resource specification", name );
xmlFree(const_cast<char *>(name));
xmlFree(const_cast<char *>(name));
return 1;
}

ArrayDataSourceParser arrayDataSourceParser( resource );
int err = processChildren( node, ARRAY_DATA_SOURCE_TAG, state, arrayDataSourceParser );
if( err != 0 )
{
xmlFree(const_cast<char *>(name));
xmlFree(const_cast<char *>(name));
return err;
}
xmlFree(const_cast<char *>(name));
xmlFree(const_cast<char *>(name));
return 0;
}
};
Expand All@@ -605,22 +605,22 @@ class BindParser :

if (FML_INVALID_HANDLE == argument)
{
const char* argsAttrib = getStringAttribute( objectNode, ARGUMENT_ATTRIB );
state.errorHandler->logError( "Incompatible bind", argsAttrib);
xmlFree(const_cast<char *>(argsAttrib));
return 1;
const char* argsAttrib = getStringAttribute( objectNode, ARGUMENT_ATTRIB );
state.errorHandler->logError( "Incompatible bind", argsAttrib);
xmlFree(const_cast<char *>(argsAttrib));
return 1;
}
else if (FML_INVALID_HANDLE == source)
{
const char* sourceAttrib = getStringAttribute( objectNode, SOURCE_ATTRIB );
state.errorHandler->logError( "Incompatible bind", sourceAttrib);
xmlFree(const_cast<char *>(sourceAttrib));
return 1;
const char* sourceAttrib = getStringAttribute( objectNode, SOURCE_ATTRIB );
state.errorHandler->logError( "Incompatible bind", sourceAttrib);
xmlFree(const_cast<char *>(sourceAttrib));
return 1;
}
else if( Fieldml_SetBind( state.session, object, argument, source ) != FML_ERR_NO_ERROR )
{
const char* argsAttrib = getStringAttribute( objectNode, ARGUMENT_ATTRIB );
const char* sourceAttrib = getStringAttribute( objectNode, SOURCE_ATTRIB );
const char* argsAttrib = getStringAttribute( objectNode, ARGUMENT_ATTRIB );
const char* sourceAttrib = getStringAttribute( objectNode, SOURCE_ATTRIB );
state.errorHandler->logError( "Incompatible bind", argsAttrib, sourceAttrib );
xmlFree(const_cast<char *>(argsAttrib));
xmlFree(const_cast<char *>(sourceAttrib));
Expand DownExpand Up@@ -649,7 +649,7 @@ class BindIndexParser :

if( Fieldml_SetIndexEvaluator( state.session, object, indexNumber, argument ) != FML_ERR_NO_ERROR )
{
const char* argsAttrib = getStringAttribute( objectNode, ARGUMENT_ATTRIB );
const char* argsAttrib = getStringAttribute( objectNode, ARGUMENT_ATTRIB );
state.errorHandler->logError( "Incompatible index bind", argsAttrib );
xmlFree(const_cast<char *>(argsAttrib));
return 1;
Expand DownExpand Up@@ -814,7 +814,7 @@ class BooleanTypeParser :
FmlObjectHandle handle = Fieldml_CreateBooleanType( state.session, name );
if( handle == FML_INVALID_HANDLE )
{
xmlFree(const_cast<char *>(name));
xmlFree(const_cast<char *>(name));
state.errorHandler->logError( "BooleanType creation failed", name );
return 1;
}
Expand DownExpand Up@@ -979,7 +979,7 @@ class MeshTypeParser :
err = chartParser.parseNode( chartNode, state );
if( err != 0 )
{
xmlFree(const_cast<char *>(name));
xmlFree(const_cast<char *>(name));
return err;
}

Expand DownExpand Up@@ -1154,23 +1154,23 @@ class PiecewiseEvaluatorParser :
int err = processChildren( evaluatorsNode, EVALUATOR_MAP_ENTRY_TAG, state, piecewiseMapParser );
if( err != 0 )
{
xmlFree(const_cast<char *>(name));
xmlFree(const_cast<char *>(name));
return err;
}

BindParser bindParser( evaluator );
err = processChildren( getFirstChild( objectNode, BINDINGS_TAG ), BIND_TAG, state, bindParser );
if( err != 0 )
{
xmlFree(const_cast<char *>(name));
xmlFree(const_cast<char *>(name));
return err;
}

IndexEvaluatorParser indexEvaluatorParser( evaluator );
err = processChildren( getFirstChild( objectNode, INDEX_EVALUATORS_TAG ), INDEX_EVALUATOR_TAG, state, indexEvaluatorParser );
if( err != 0 )
{
xmlFree(const_cast<char *>(name));
xmlFree(const_cast<char *>(name));
return err;
}
xmlFree(const_cast<char *>(name));
Expand DownExpand Up@@ -1247,23 +1247,23 @@ class AggregateEvaluatorParser :
int err = processChildren( evaluatorsNode, COMPONENT_EVALUATOR_TAG, state, aggregateMapParser );
if( err != 0 )
{
xmlFree(const_cast<char *>(name));
xmlFree(const_cast<char *>(name));
return err;
}

BindParser bindParser( evaluator );
err = processChildren( getFirstChild( objectNode, BINDINGS_TAG ), BIND_TAG, state, bindParser );
if( err != 0 )
{
xmlFree(const_cast<char *>(name));
xmlFree(const_cast<char *>(name));
return err;
}

BindIndexParser bindIndexParser( evaluator );
err = processChildren( getFirstChild( objectNode, BINDINGS_TAG ), BIND_INDEX_TAG, state, bindIndexParser );
if( err != 0 )
{
xmlFree(const_cast<char *>(name));
xmlFree(const_cast<char *>(name));
return err;
}
xmlFree(const_cast<char *>(name));
Expand DownExpand Up@@ -1353,7 +1353,7 @@ class ParameterEvaluatorParser :
int err = processChildren( getFirstChild( denseNode, DENSE_INDEXES_TAG ), INDEX_EVALUATOR_TAG, state, parameterIndexEvaluatorParser );
if( err != 0 )
{
xmlFree(const_cast<char *>(name));
xmlFree(const_cast<char *>(name));
return err;
}
}
Expand DownExpand Up@@ -1386,15 +1386,15 @@ class ParameterEvaluatorParser :
int err = processChildren( getFirstChild( dokNode, SPARSE_INDEXES_TAG ), INDEX_EVALUATOR_TAG, state, denseIndexEvaluatorParser );
if( err != 0 )
{
xmlFree(const_cast<char *>(name));
xmlFree(const_cast<char *>(name));
return err;
}

ParameterIndexEvaluatorParser sparseIndexEvaluatorParser( evaluator, true );
err = processChildren( getFirstChild( dokNode, DENSE_INDEXES_TAG ), INDEX_EVALUATOR_TAG, state, sparseIndexEvaluatorParser );
if( err != 0 )
{
xmlFree(const_cast<char *>(name));
xmlFree(const_cast<char *>(name));
return err;
}
}
Expand Down