[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [14174] trunk/blender/release/scripts/ flt_import.py: -> Path handling fix for External references in FLT import

Geoffrey Bantle hairbat at yahoo.com
Wed Mar 19 20:23:45 CET 2008


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]





More information about the Bf-blender-cvs mailing list