Revision: 38528
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=38528
Author:   campbellbarton
Date:     2011-07-20 08:10:01 +0000 (Wed, 20 Jul 2011)
Log Message:
-----------
added bpy.path.basename because "//" prefix breaks os.path.basename.

Modified Paths:
--------------
    trunk/blender/release/scripts/modules/bpy/path.py
    trunk/blender/release/scripts/modules/bpy_extras/image_utils.py
    trunk/blender/release/scripts/startup/bl_operators/image.py

Modified: trunk/blender/release/scripts/modules/bpy/path.py
===================================================================
--- trunk/blender/release/scripts/modules/bpy/path.py   2011-07-20 06:41:51 UTC 
(rev 38527)
+++ trunk/blender/release/scripts/modules/bpy/path.py   2011-07-20 08:10:01 UTC 
(rev 38528)
@@ -117,7 +117,7 @@
     """
     Returns the path stripped of directort and extension, ensured to be utf8 
compatible.
     """
-    return _os.path.splitext(_os.path.basename(name))[0].encode("utf8", 
"replace").decode("utf8")
+    return _os.path.splitext(basename(name))[0].encode("utf8", 
"replace").decode("utf8")
 
 
 def resolve_ncase(path):
@@ -231,3 +231,12 @@
                         modules.append(("%s.%s" % (filename, mod_name), 
mod_path))
 
     return modules
+
+
+def basename(path):
+    """
+    Equivalent to os.path.basename, but skips a "//" suffix.
+
+    Use for Windows compatibility.
+    """
+    return _os.path.basename(path[2:] if path.startswith("//") else path)

Modified: trunk/blender/release/scripts/modules/bpy_extras/image_utils.py
===================================================================
--- trunk/blender/release/scripts/modules/bpy_extras/image_utils.py     
2011-07-20 06:41:51 UTC (rev 38527)
+++ trunk/blender/release/scripts/modules/bpy_extras/image_utils.py     
2011-07-20 08:10:01 UTC (rev 38528)
@@ -86,7 +86,9 @@
     variants = [imagepath]
 
     if dirname:
-        variants += [os.path.join(dirname, imagepath), os.path.join(dirname, 
os.path.basename(imagepath))]
+        variants += [os.path.join(dirname, imagepath),
+                     os.path.join(dirname, bpy.path.basename(imagepath)),
+                     ]
 
     for filepath_test in variants:
         if ncase_cmp:
@@ -99,7 +101,7 @@
                 return _image_load(nfilepath)
 
     if place_holder:
-        image = bpy.data.images.new(os.path.basename(imagepath), 128, 128)
+        image = bpy.data.images.new(bpy.path.basename(imagepath), 128, 128)
         # allow the path to be resolved later
         image.filepath = imagepath
         return image

Modified: trunk/blender/release/scripts/startup/bl_operators/image.py
===================================================================
--- trunk/blender/release/scripts/startup/bl_operators/image.py 2011-07-20 
06:41:51 UTC (rev 38527)
+++ trunk/blender/release/scripts/startup/bl_operators/image.py 2011-07-20 
08:10:01 UTC (rev 38528)
@@ -163,7 +163,7 @@
             filepath_final = filepath + ("%.3d.%s" % (i, EXT))
             i += 1
 
-        image_new.name = os.path.basename(filepath_final)
+        image_new.name = bpy.path.basename(filepath_final)
         ProjectEdit._proj_hack[0] = image_new.name
 
         image_new.filepath_raw = filepath_final  # TODO, filepath raw is crummy

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to