Revision: 14174
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=14174
Author: briggs
Date: 2008-03-19 20:23:42 +0100 (Wed, 19 Mar 2008)
Log Message:
-----------
-> Path handling fix for External references in FLT import
FLT importer had problems with external references that used
relative paths. Fixed.
Modified Paths:
--------------
trunk/blender/release/scripts/flt_import.py
Modified: trunk/blender/release/scripts/flt_import.py
===================================================================
--- trunk/blender/release/scripts/flt_import.py 2008-03-19 17:23:14 UTC (rev
14173)
+++ trunk/blender/release/scripts/flt_import.py 2008-03-19 19:23:42 UTC (rev
14174)
@@ -1328,11 +1328,17 @@
self.props['comment'] = ''
self.parse_record()
- xref_filename = self.props['3t200!filename']
+ xref_filename = self.props['3t200!filename'] #I dont even think
there is a reason to keep this around...
+
+ if not os.path.isabs(xref_filename):
+ absname =
os.path.join(os.path.dirname(self.header.filename), xref_filename)
+ else:
+ absname = xref_filename
+
self.props['id'] = 'X: ' +
Blender.sys.splitext(Blender.sys.basename(xref_filename))[0] #this is really
wrong as well....
- if global_prefs['doxrefs'] and os.path.exists(xref_filename)
and not self.header.grr.xrefs.has_key(xref_filename):
- self.xref = Database(xref_filename, self.header.grr,
self)
+ if global_prefs['doxrefs'] and os.path.exists(absname) and not
self.header.grr.xrefs.has_key(xref_filename):
+ self.xref = Database(absname, self.header.grr, self)
self.header.grr.xrefs[xref_filename] = self.xref
else:
self.xref = None
@@ -1853,6 +1859,9 @@
print 'Parsing:', filename
print
+ #check to see if filename is a relative path
+ #filename = os.path.abspath(filename)
+
self.fw = flt_filewalker.FltIn(filename)
self.filename = filename
self.bname = os.path.splitext(os.path.basename(filename))[0]
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs