From: Keith M. <kei...@us...> - 2010-03-02 19:11:19
|
Update of /cvsroot/mingw/mingw-get/src In directory sfp-cvsdas-1.v30.ch3.sourceforge.com:/tmp/cvs-serv23396/src Modified Files: sysroot.cpp Log Message: Rationalise path identification for XML file locations. Index: sysroot.cpp =================================================================== RCS file: /cvsroot/mingw/mingw-get/src/sysroot.cpp,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** sysroot.cpp 2 Feb 2010 20:19:28 -0000 1.2 --- sysroot.cpp 2 Mar 2010 19:11:08 -0000 1.3 *************** *** 112,117 **** } - static const char *sigpath = "%R" "var/lib/mingw-get/data/%F.xml"; - void pkgXmlDocument::LoadSystemMap() { --- 112,115 ---- *************** *** 157,160 **** --- 155,162 ---- * this implies that no system map has yet been selected for loading, * so check if the current one matches the selection criterion... + * + * FIXME: match_if_explicit( id, NULL ) must always return true; + * this is a place holder for a match on a system map selector, + * which will be specified by a future command line option. */ const char *id = sysmap->GetPropVal( id_key, "<default>" ); *************** *** 211,217 **** * use this to create a new installation record file. */ ! char *sig = hashed_name( retry++, sysroot_key, path ); ! char sigfile[mkpath( NULL, sigpath, sig, NULL )]; ! mkpath( sigfile, sigpath, sig, NULL ); /* Check for an existing sysroot file associated with the --- 213,218 ---- * use this to create a new installation record file. */ ! const char *sig = hashed_name( retry++, sysroot_key, path ); ! const char *sigfile = xmlfile( sig, NULL ); /* Check for an existing sysroot file associated with the *************** *** 275,281 **** } ! /* Before abandoning our reference to the current hash ! * signature, free the memory allocated for it. */ free( (void *)(sig) ); } --- 276,284 ---- } ! /* Before abandoning our references to the current hash ! * signature, and the path name for the associated XML file, ! * free the memory allocated for them. */ + free( (void *)(sigfile) ); free( (void *)(sig) ); } *************** *** 335,340 **** * name for the file in which to save the record. */ ! char mapfile[mkpath( NULL, sigpath, modified, NULL )]; ! mkpath( mapfile, sigpath, modified, NULL ); /* Create a copy of the sysroot record, as the content of --- 338,342 ---- * name for the file in which to save the record. */ ! const char *mapfile = xmlfile( modified, NULL ); /* Create a copy of the sysroot record, as the content of *************** *** 346,349 **** --- 348,356 ---- map.SetRoot( entry->Clone() ); map.Save( mapfile ); + + /* The 'xmlfile()' look-up for the 'mapfile' path name used + * the heap to return the result; free the space allocated. + */ + free( (void *)(mapfile) ); } |