check if absolute path when follow entity.

This commit is contained in:
Ryu Sawada
2005-10-09 23:06:41 +00:00
parent e5baf9cb9d
commit ee558d0032
+4 -1
View File
@@ -1727,7 +1727,10 @@ int mxml_parse_entity(char **buf, char *file_name, char *error, int error_size)
/* read external file */
for (i = 0; i < nentity; i++) {
if (entity_type[i] == EXTERNAL_ENTITY) {
sprintf(filename, "%s%c%s", directoryname, DIR_SEPARATOR, entity_reference_name[i]);
if ( entity_reference_name[i][0] == DIR_SEPARATOR ) /* absolute path */
strcpy(filename, entity_reference_name[i]);
else /* relative path */
sprintf(filename, "%s%c%s", directoryname, DIR_SEPARATOR, entity_reference_name[i]);
fh = open(filename, O_RDONLY | O_TEXT, 0644);
if (fh == -1) {