[Qt-interest] Segmentation Fault encountered while assigning text of QDomElement to a QString variable

qt-interest at status.e4ward.com qt-interest at status.e4ward.com
Sat Jul 25 19:39:43 CEST 2009


Yeah, from the code it looks like you need to allocate a new  
person_info for *person to point to.


On Jul 25, 2009, at 1:08 AM, Usman Ajmal wrote:

> Hi,
>
> I am trying to parse an xml which contain, say
>
> <human>
> <male>
>       <name>usman</name>
>       <age>21</age>
> </male>
> <male>
>       <name>fedrick</name>
>       <age>23</age>
> </male>
> </human>
>
> When i run following program i get segmentation fault at the bold  
> line of the source code below
>
> //my person_info class
> class person_info {
> public:
> QString name;
> QString age;
> person_info()
> {
>     name = "";
>     age = ""
> }
> };
> person_info *person;
>
>
> //main.cpp
> QDomElement docElem = doc.documentElement();
>   traverseXML(docElem);
>
> //Taverse XML function
> void traverseXML(QDomElement docElem)
> {
>     QDomNode n = docElem.firstChild();
>     while(!n.isNull())
>         {
>         QDomElement e = n.toElement(); // try to convert the node to  
> an element
>         if(!e.isNull()) {
>             QString str =  e.tagName();
>             traverseXML(e);
>             cout<<str<<"   ";
>              if (str =="name")
>                     person->name = e.text(); //segmentation fault  
> occurs here. If i use 'QString test = e.text()' in its place then no  
> segmentation fault occurs here
>              if (str=="age")
>                     person->age = e.age();
>             }
>         }
>              n = n.nextSibling();
>          }
>     if (n.isNull())
>         return;
> }
>
>
> Any idea what is causing this Seg. Fault?
>
> ---
> Usman
> _______________________________________________
> Qt-interest mailing list
> Qt-interest at trolltech.com
> http://lists.trolltech.com/mailman/listinfo/qt-interest

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.qt-project.org/pipermail/qt-interest-old/attachments/20090725/79c2bdfd/attachment.html 


More information about the Qt-interest-old mailing list