diff -ruN pyxf86config-0.3.32.orig/xf86config_ext.c pyxf86config-0.3.32/xf86config_ext.c --- pyxf86config-0.3.32.orig/xf86config_ext.c 2007-10-10 16:11:22.000000000 -0400 +++ pyxf86config-0.3.32/xf86config_ext.c 2007-10-11 10:26:05.000000000 -0400 @@ -42,16 +42,12 @@ void xf86freeVideoAdaptor (XF86ConfVideoAdaptorPtr ptr) { - TestFree (ptr->va_identifier); - TestFree (ptr->va_vendor); - TestFree (ptr->va_board); - TestFree (ptr->va_busid); - TestFree (ptr->va_driver); - TestFree (ptr->va_fwdref); - TestFree (ptr->va_comment); - xf86freeVideoPortList (ptr->va_port_lst); - xf86optionListFree (ptr->va_option_lst); - xf86conffree (ptr); + XF86ConfVideoAdaptorPtr ptr2; + + ptr2 = ptr->list.next; + ptr->list.next = NULL; + xf86freeVideoAdaptorList(ptr); + ptr->list.next = ptr2; } void @@ -66,10 +62,12 @@ void xf86freeModes (XF86ConfModesPtr ptr) { - TestFree (ptr->modes_identifier); - TestFree (ptr->modes_comment); - xf86freeModeLineList (ptr->mon_modeline_lst); - xf86conffree (ptr); + XF86ConfModesPtr ptr2; + + ptr2 = ptr->list.next; + ptr->list.next = NULL; + xf86freeModesList(ptr); + ptr->list.next = ptr2; } void @@ -84,13 +82,12 @@ void xf86freeMonitor (XF86ConfMonitorPtr ptr) { - TestFree (ptr->mon_identifier); - TestFree (ptr->mon_vendor); - TestFree (ptr->mon_modelname); - TestFree (ptr->mon_comment); - xf86optionListFree (ptr->mon_option_lst); - xf86freeModeLineList (ptr->mon_modeline_lst); - xf86conffree (ptr); + XF86ConfMonitorPtr ptr2; + + ptr2 = ptr->list.next; + ptr->list.next = NULL; + xf86freeMonitorList(ptr); + ptr->list.next = ptr2; } void @@ -182,11 +179,12 @@ void xf86freeLayout (XF86ConfLayoutPtr ptr) { - TestFree (ptr->lay_identifier); - TestFree (ptr->lay_comment); - xf86freeAdjacencyList (ptr->lay_adjacency_lst); - xf86freeInputrefList (ptr->lay_input_lst); - xf86conffree (ptr); + XF86ConfLayoutPtr ptr2; + + ptr2 = ptr->list.next; + ptr->list.next = NULL; + xf86freeLayoutList(ptr); + ptr->list.next = ptr2; } void Files pyxf86config-0.3.32.orig/.xf86config_ext.c.swp and pyxf86config-0.3.32/.xf86config_ext.c.swp differ diff -ruN pyxf86config-0.3.32.orig/xf86ParserExt.h pyxf86config-0.3.32/xf86ParserExt.h --- pyxf86config-0.3.32.orig/xf86ParserExt.h 2007-10-10 16:11:22.000000000 -0400 +++ pyxf86config-0.3.32/xf86ParserExt.h 2007-10-10 17:06:40.000000000 -0400 @@ -4,13 +4,14 @@ extern void xf86freeFiles (XF86ConfFilesPtr p); extern void xf86freeModules (XF86ConfModulePtr ptr); extern void xf86freeFlags (XF86ConfFlagsPtr flags); -extern void xf86freeVideoPortList (XF86ConfVideoPortPtr ptr); -extern void xf86freeModeLineList (XF86ConfModeLinePtr ptr); +extern void xf86freeVideoAdaptorList (XF86ConfVideoAdaptorPtr ptr); +extern void xf86freeMonitorList (XF86ConfMonitorPtr ptr); +extern void xf86freeModesList (XF86ConfModesPtr ptr); extern void xf86freeModeList (XF86ModePtr ptr); extern void xf86optionListFree (XF86OptionPtr opt); extern void xf86freeAdaptorLinkList (XF86ConfAdaptorLinkPtr ptr); extern void xf86freeDisplayList (XF86ConfDisplayPtr ptr); -extern void xf86freeInputrefList (XF86ConfInputrefPtr ptr); +extern void xf86freeLayoutList (XF86ConfLayoutPtr ptr); extern void xf86freeAdjacencyList (XF86ConfAdjacencyPtr ptr); extern void xf86freeDRI (XF86ConfDRIPtr ptr); extern void xf86freeVendorSubList (XF86ConfVendSubPtr ptr);