On Tuesday 17 June 2003 10:40 am, Wido Depping wrote: > On Tuesday 17 June 2003 10:26, Phil Thompson wrote: > > On Monday 16 June 2003 11:34 pm, Wido Depping wrote: > > > I have a widget whose children are created dynamicly. if i get new data > > > i have to refresh the widget, delete all it's children and create the > > > child-widgets again. Most of the time this method works, but sometimes > > > i get a segmentation fault. > > > This is the method for the deletion of the children: > > > for x in self.attributeWidget.children(): > > > name = str(x.name()) > > > # this ensures, that the layout is not deleted > > > # every label, lineedit and button has a name which starts with 'LDAP' > > > if name[:4] == "LDAP": > > > x.destroy() > > > self.attributeWidget.removeChild(x) > > > > > > So, is my code wrong or is it PyQt's fault? Attached is a backtracke i > > > got from gdb: > > > > What happens if you call removeChild() before you call destroy()? > > Then I get a segmentation fault, too. This time it happens, if I refresh > the widget and then press 'Alt'. It also happens if I minimize and restore > the window. Also with the same backtrace. > That's why I executed the destroy() before removeChild().
You should definately do the removeChild() first. I would also "del x" rather than "x.destroy()". Other than that, have you got a small, but complete, example that demonstrates the problem. Phil _______________________________________________ PyKDE mailing list [EMAIL PROTECTED] http://mats.imk.fraunhofer.de/mailman/listinfo/pykde
