Languages

Menu
Sites
Language
SAX Parsing problem

I have created a SAX parser which will parse my xml. OnClick of  button, I am calling a method to start parsing, The following is the code for button click,

void
XMLParserMainForm::parse() {
    xmlSAXHandlerPtr pMySaxhandler = &mySAXhandler;
    __filePath = App::GetInstance()->GetAppDataPath() + L"download.xml";
    __pPath = Tizen::Base::Utility::StringUtil::StringToUtf8N(__filePath);
    r = xmlSAXUserParseFile(pMySaxhandler, null, (const char*) __pPath->GetPointer());
if(r == 0)
    AppLog("Success");
}

The problem which I am facing is , my app crashes once the parsing is complete. I mean,  my app crashes after the

void EndDocumentSAXFunc(void* ctx) { AppLog("End Doc");}

I can see all the values are parsed properly. But I couldn't understand why it crashes after callingEndDocumentSAXFunc .

One more strange problem which I am facing is , If I am running my app in Debug mode (NO BREAKPOINTS) , it is working fine.

But if I run the application, it crashes at the end. Can anyone tell me why it is happening so ?

Following is the crash report details,

INFO / XMLParser( 14595 : 14595 ) : void EndDocumentSAXFunc(void *)(213) > END DOC

08-29 17:45:54.823 : ERROR / Tizen::Base::Collection ( 2343 : 2343 ) : virtual result Tizen::Base::Collection::ArrayList::IndexOf(const Tizen::Base::Object&, int, int, int&) const(293) > [E_OBJ_NOT_FOUND] The arraylist is empty.

08-29 17:45:54.823 : ERROR / Tizen::Base::Collection ( 2343 : 2343 ) : virtual result Tizen::Base::Collection::ArrayList::Remove(const Tizen::Base::Object&)(396) > [E_OBJ_NOT_FOUND] Propagating.

08-29 17:45:54.833 : ERROR / Tizen::Io ( 2343 : 2343 ) : result Tizen::Io::_DbEnumeratorImpl::GetStringAt(int, Tizen::Base::String&) const(879) > [E_TYPE_MISMATCH] Trying to access column of different type.

08-29 17:45:54.833 : ERROR / Tizen::Io ( 2343 : 2343 ) : result Tizen::Io::_DbEnumeratorImpl::GetIntAt(int, int&) const(810) > [E_TYPE_MISMATCH] Trying to access column of different type.

08-29 17:45:54.833 : ERROR / Tizen::Io ( 2343 : 2343 ) : result Tizen::Io::_DbEnumeratorImpl::GetStringAt(int, Tizen::Base::String&) const(879) > [E_TYPE_MISMATCH] Trying to access column of different type.
Edited by: Brock Boland on 17 Mar, 2014 Reason: Paragraph tags added automatically from tizen_format_fix module.

Responses

2 Replies
wil smith
Strange... If can share a sample project, somebody can help you out easily.
Leo Joseph
That's the problem smith. I am not authorized to post it. Sorry. But I thought atleast I will get some help from the Error logs