You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by gw...@apache.org on 2007/02/21 15:28:07 UTC
svn commit: r510021 - in /incubator/tuscany/cpp/sdo/runtime/core:
src/commonj/sdo/SAX2Parser.cpp test/ test/sdotest.cpp test/sdotest2.cpp
Author: gwinn
Date: Wed Feb 21 06:28:06 2007
New Revision: 510021
URL: http://svn.apache.org/viewvc?view=rev&rev=510021
Log:
Fixes identified by valgrind.
Modified:
incubator/tuscany/cpp/sdo/runtime/core/src/commonj/sdo/SAX2Parser.cpp
incubator/tuscany/cpp/sdo/runtime/core/test/ (props changed)
incubator/tuscany/cpp/sdo/runtime/core/test/sdotest.cpp
incubator/tuscany/cpp/sdo/runtime/core/test/sdotest2.cpp
Modified: incubator/tuscany/cpp/sdo/runtime/core/src/commonj/sdo/SAX2Parser.cpp
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sdo/runtime/core/src/commonj/sdo/SAX2Parser.cpp?view=diff&rev=510021&r1=510020&r2=510021
==============================================================================
--- incubator/tuscany/cpp/sdo/runtime/core/src/commonj/sdo/SAX2Parser.cpp (original)
+++ incubator/tuscany/cpp/sdo/runtime/core/src/commonj/sdo/SAX2Parser.cpp Wed Feb 21 06:28:06 2007
@@ -308,8 +308,10 @@
SAX2Parser::~SAX2Parser()
{
// xmlCleanupParser();
- if (currentFile != 0)delete currentFile;
-
+ if (currentFile != 0)
+ {
+ delete[] currentFile;
+ }
}
const char* SAX2Parser::getCurrentFile() const
@@ -322,7 +324,7 @@
{
if (currentFile != 0)
{
- delete currentFile;
+ delete[] currentFile;
}
currentFile = new char[strlen(filename)+1];
strcpy(currentFile,filename);
@@ -336,7 +338,7 @@
if (currentFile != 0)
{
- delete currentFile;
+ delete[] currentFile;
}
currentFile = new char[strlen(filename)+1];
strcpy(currentFile,filename);
Propchange: incubator/tuscany/cpp/sdo/runtime/core/test/
------------------------------------------------------------------------------
--- svn:ignore (original)
+++ svn:ignore Wed Feb 21 06:28:06 2007
@@ -56,3 +56,6 @@
tuscany_sdo_test
clone-testout.xml
tuscany963.out.xml
+jira980_jungle_out.xml
+jira980_mixedJungle_out.xml
+jira980_splitJungle_out.xml
Modified: incubator/tuscany/cpp/sdo/runtime/core/test/sdotest.cpp
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sdo/runtime/core/test/sdotest.cpp?view=diff&rev=510021&r1=510020&r2=510021
==============================================================================
--- incubator/tuscany/cpp/sdo/runtime/core/test/sdotest.cpp (original)
+++ incubator/tuscany/cpp/sdo/runtime/core/test/sdotest.cpp Wed Feb 21 06:28:06 2007
@@ -3073,41 +3073,54 @@
int sdotest::jira705()
{
- char* retval = NULL;
+ char* retval = NULL;
- try
- {
- DataFactoryPtr dataFactoryPtr = DataFactory::getDataFactory();
- XSDHelperPtr xsdHelperPtr = HelperProvider::getXSDHelper((DataFactory *)dataFactoryPtr);
- XMLHelperPtr xmlHelperPtr = HelperProvider::getXMLHelper((DataFactory *)dataFactoryPtr);
- xsdHelperPtr->defineFile("jira705.xsd");
+ try
+ {
+ DataFactoryPtr dataFactoryPtr = DataFactory::getDataFactory();
+ XSDHelperPtr xsdHelperPtr = HelperProvider::getXSDHelper((DataFactory *)dataFactoryPtr);
+ XMLHelperPtr xmlHelperPtr = HelperProvider::getXMLHelper((DataFactory *)dataFactoryPtr);
+ xsdHelperPtr->defineFile("jira705.xsd");
- DataObjectPtr dataObjectPtr = dataFactoryPtr->create("http://ConvertedStockQuote", "getQuote");
+ DataObjectPtr dataObjectPtr = dataFactoryPtr->create("http://ConvertedStockQuote",
+ "getQuote");
- dataObjectPtr->setCString("ticker1", "IBM");
- dataObjectPtr->setNull("ticker2");
+ dataObjectPtr->setCString("ticker1", "IBM");
+ dataObjectPtr->setNull("ticker2");
- XMLDocumentPtr xmlDocumentPtr = xmlHelperPtr->createDocument(dataObjectPtr, 0, "getQuote");
+ XMLDocumentPtr xmlDocumentPtr = xmlHelperPtr->createDocument(dataObjectPtr, 0, "getQuote");
- retval = xmlHelperPtr->save(xmlDocumentPtr, 2);
+ retval = xmlHelperPtr->save(xmlDocumentPtr, 2);
+ }
+ catch (SDORuntimeException e)
+ {
+ if (!silent) cout << "jira705 test failed" << endl;
+ if (retval != NULL)
+ {
+ delete[] retval;
+ }
- }
- catch (SDORuntimeException e)
- {
- if (!silent) cout << "jira705 test failed" << endl;
- return 0;
- }
+ return 0;
+ }
- FILE *outfile = fopen("jira705_out.xml","w+");
+ FILE *outfile = fopen("jira705_out.xml", "w+");
if (outfile == 0)
{
if (!silent) cout << "Unable to open jira705_out.xml" << endl;
+ if (retval != NULL)
+ {
+ delete[] retval;
+ }
return 0;
}
fprintf(outfile, "%s", retval);
fclose(outfile);
+ if (retval != NULL)
+ {
+ delete[] retval;
+ }
return comparefiles("jira705_out.xml", "jira705_out.txt");
Modified: incubator/tuscany/cpp/sdo/runtime/core/test/sdotest2.cpp
URL: http://svn.apache.org/viewvc/incubator/tuscany/cpp/sdo/runtime/core/test/sdotest2.cpp?view=diff&rev=510021&r1=510020&r2=510021
==============================================================================
--- incubator/tuscany/cpp/sdo/runtime/core/test/sdotest2.cpp (original)
+++ incubator/tuscany/cpp/sdo/runtime/core/test/sdotest2.cpp Wed Feb 21 06:28:06 2007
@@ -729,156 +729,208 @@
int sdotest::testanytwo(const char* xsd, const char* xsd2,
- const char* xml)
+ const char* xml)
{
+ unsigned int i, j;
+ try
+ {
+ char * name1 = new char[strlen(xsd)+5];
+ char * name2 = new char[strlen(xml)+5];
+ char * name3 = new char[strlen(xsd)+5];
+ char * name4 = new char[strlen(xml)+5];
- unsigned int i,j;
+ strcpy(name1,xsd);
+ strcpy(name2,xml);
- try {
+ char *c;
- char * name1 = new char[strlen(xsd)+5];
- char * name2 = new char[strlen(xml)+5];
- char * name3 = new char[strlen(xsd)+5];
- char * name4 = new char[strlen(xml)+5];
- strcpy(name1,xsd);
- strcpy(name2,xml);
- char *c;
- while ((c = strchr(name1,'.')) != 0)*c = '_';
- while ((c = strchr(name2,'.')) != 0)*c = '_';
- strcpy(name3,name1);
- strcpy(name4,name2);
+ while ((c = strchr(name1,'.')) != 0)*c = '_';
+ while ((c = strchr(name2,'.')) != 0)*c = '_';
+
+ strcpy(name3,name1);
+ strcpy(name4,name2);
- strcat(name1,".dat");
- strcat(name2,".dat");
- strcat(name3,".txt");
- strcat(name4,".txt");
+ strcat(name1,".dat");
+ strcat(name2,".dat");
+ strcat(name3,".txt");
+ strcat(name4,".txt");
- DataFactoryPtr mdg = DataFactory::getDataFactory();
+ DataFactoryPtr mdg = DataFactory::getDataFactory();
- XSDHelperPtr xsh = HelperProvider::getXSDHelper(mdg);
+ XSDHelperPtr xsh = HelperProvider::getXSDHelper(mdg);
- if (xsd)
- {
- xsh->defineFile(xsd);
+ if (xsd)
+ {
+ xsh->defineFile(xsd);
- if ((i = xsh->getErrorCount()) > 0)
- {
+ if ((i = xsh->getErrorCount()) > 0)
+ {
if (!silent)
{
- cout << "PROBLEM: Testany XSD reported some errors:" << endl;
- for (j=0;j<i;j++)
- {
- const char *m = xsh->getErrorMessage(j);
- if (m != 0) cout << m;
- cout << endl;
- }
+ cout << "PROBLEM: Testany XSD reported some errors:" << endl;
+ for (j=0;j<i;j++)
+ {
+ const char *m = xsh->getErrorMessage(j);
+ if (m != 0) cout << m;
+ cout << endl;
+ }
}
+ delete[] name1;
+ delete[] name2;
+ delete[] name3;
+ delete[] name4;
+
return 0;
- }
+ }
- }
+ }
- if (xsd2)
- {
- xsh->defineFile(xsd2);
+ if (xsd2)
+ {
+ xsh->defineFile(xsd2);
- if ((i = xsh->getErrorCount()) > 0)
- {
+ if ((i = xsh->getErrorCount()) > 0)
+ {
if (!silent)
{
- cout << "PROBLEM: Testany XSD2 reported some errors:" << endl;
- for (j=0;j<i;j++)
- {
- const char *m = xsh->getErrorMessage(j);
- if (m != 0) cout << m;
- cout << endl;
- }
+ cout << "PROBLEM: Testany XSD2 reported some errors:" << endl;
+ for (j=0;j<i;j++)
+ {
+ const char *m = xsh->getErrorMessage(j);
+ if (m != 0) cout << m;
+ cout << endl;
+ }
}
+
+ delete[] name1;
+ delete[] name2;
+ delete[] name3;
+ delete[] name4;
+
return 0;
- }
- }
+ }
+ }
- if (xsd)
- {
+ if (xsd)
+ {
- FILE *f1 = fopen(name1,"w+");
- if (f1 == 0)
- {
+ FILE *f1 = fopen(name1,"w+");
+ if (f1 == 0)
+ {
if (!silent)cout << "Unable to open " << name1 << endl;
+
+ delete[] name1;
+ delete[] name2;
+ delete[] name3;
+ delete[] name4;
+
return 0;
- }
+ }
- TypeList tl = mdg->getTypes();
+ TypeList tl = mdg->getTypes();
- fprintf(f1,"***** TESTANY ******************************************\n");
+ fprintf(f1,"***** TESTANY ******************************************\n");
- for (i=0;i<tl.size();i++)
- {
+ for (i=0;i<tl.size();i++)
+ {
fprintf(f1,"Type:%s#%s\n",tl[i].getURI(),tl[i].getName());
PropertyList pl = tl[i].getProperties();
for (unsigned int j=0;j<pl.size();j++)
{
- fprintf(f1,"Property:%s ",pl[j].getName());
- if (pl[j].isMany())
- fprintf(f1, "(many) ");
- fprintf(f1, " of type %s\n",pl[j].getType().getName());
+ fprintf(f1,"Property:%s ",pl[j].getName());
+ if (pl[j].isMany())
+ fprintf(f1, "(many) ");
+ fprintf(f1, " of type %s\n",pl[j].getType().getName());
}
- }
+ }
- fprintf(f1,"*******************************END TYPES******************\n");
+ fprintf(f1,"*******************************END TYPES******************\n");
- fclose(f1);
+ fclose(f1);
- if (!comparefiles(name1,name3)) return 0;
+ if (!comparefiles(name1,name3))
+ {
+ delete[] name1;
+ delete[] name2;
+ delete[] name3;
+ delete[] name4;
- }
+ return 0;
+ }
+ }
- if (xml == 0 || strlen(xml) == 0) return 1;
+ if (xml == 0 || strlen(xml) == 0)
+ {
+ delete[] name1;
+ delete[] name2;
+ delete[] name3;
+ delete[] name4;
+
+ return 1;
+ }
+
+ FILE *f2 = fopen(name2,"w+");
+ if (f2 == 0)
+ {
+ if (!silent)cout << "Unable to open " << name2 << endl;
+ delete[] name1;
+ delete[] name2;
+ delete[] name3;
+ delete[] name4;
+ return 0;
+ }
- FILE *f2 = fopen(name2,"w+");
- if (f2 == 0)
- {
- if (!silent)cout << "Unable to open " << name2 << endl;
- return 0;
- }
-
- XMLHelperPtr xmh = HelperProvider::getXMLHelper(mdg);
+ XMLHelperPtr xmh = HelperProvider::getXMLHelper(mdg);
- XMLDocumentPtr doc = xmh->loadFile(xml);
+ XMLDocumentPtr doc = xmh->loadFile(xml);
- if ((i = xmh->getErrorCount()) > 0)
- {
- if (!silent)
- {
+ if ((i = xmh->getErrorCount()) > 0)
+ {
+ if (!silent)
+ {
cout << "TestAny XML found errors:" << endl;
for (j=0;j<i;j++)
{
- const char *m = xmh->getErrorMessage(j);
- if (m != 0) cout << m;
- cout << endl;
+ const char *m = xmh->getErrorMessage(j);
+ if (m != 0) cout << m;
+ cout << endl;
}
- }
- return 0;
- }
- else
- {
- DataObjectPtr dob = doc->getRootDataObject();
- printDataObject(f2, dob);
- }
-
- fclose(f2);
- return comparefiles(name2,name4);
-
- }
- catch (SDORuntimeException e)
- {
- if (!silent)cout << "Exception in TestAnyTwo" << e << endl;
- return 0;
- }
+ }
+ delete[] name1;
+ delete[] name2;
+ delete[] name3;
+ delete[] name4;
+
+ return 0;
+ }
+ else
+ {
+ DataObjectPtr dob = doc->getRootDataObject();
+ printDataObject(f2, dob);
+ }
+
+ fclose(f2);
+ int result = comparefiles(name2,name4);
+
+ delete[] name1;
+ delete[] name2;
+ delete[] name3;
+ delete[] name4;
+
+ return result;
+
+
+ }
+ catch (SDORuntimeException e)
+ {
+ if (!silent)cout << "Exception in TestAnyTwo" << e << endl;
+
+ return 0;
+ }
}
int sdotest::openseq()
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org