[Bf-blender-cvs] [6c878c5d3ca] master: Fix T58692: splash screen next not working when using BLENDER_USER_CONFIG.

Brecht Van Lommel noreply at git.blender.org
Fri Jan 4 16:26:02 CET 2019


Commit: 6c878c5d3ca466fb6b7dd8894f8c2565b8e6d223
Author: Brecht Van Lommel
Date:   Fri Jan 4 16:24:11 2019 +0100
Branches: master
https://developer.blender.org/rB6c878c5d3ca466fb6b7dd8894f8c2565b8e6d223

Fix T58692: splash screen next not working when using BLENDER_USER_CONFIG.

===================================================================

M	release/scripts/startup/bl_operators/wm.py

===================================================================

diff --git a/release/scripts/startup/bl_operators/wm.py b/release/scripts/startup/bl_operators/wm.py
index b8db041710c..2cdcca562c7 100644
--- a/release/scripts/startup/bl_operators/wm.py
+++ b/release/scripts/startup/bl_operators/wm.py
@@ -1483,9 +1483,19 @@ class WM_OT_copy_prev_settings(Operator):
 
         old = cls._old_path()
         new = cls._new_path()
+
+        # Disable operator in case config path is overriden with environment
+        # variable. That case has no automatic per-version configuration.
+        userconfig_path = os.path.normpath(bpy.utils.user_resource('CONFIG'))
+        new_userconfig_path = os.path.normpath(os.path.join(new, "config"))
+        if userconfig_path != new_userconfig_path:
+            return False
+
+        # Enable operator if new config path does not exist yet.
         if os.path.isdir(old) and not os.path.isdir(new):
             return True
 
+        # Enable operator also if there are no new user preference yet.
         old_userpref = os.path.join(old, "config", "userpref.blend")
         new_userpref = os.path.join(new, "config", "userpref.blend")
         return os.path.isfile(old_userpref) and not os.path.isfile(new_userpref)
@@ -2693,8 +2703,8 @@ class WM_MT_splash(Menu):
         # Draw setup screen if no preferences have been saved yet.
         import os
 
-        user_path = bpy.utils.resource_path('USER')
-        userdef_path = os.path.join(user_path, "config", "userpref.blend")
+        userconfig_path = bpy.utils.user_resource('CONFIG');
+        userdef_path = os.path.join(userconfig_path, "userpref.blend")
 
         if not os.path.isfile(userdef_path):
             self.draw_setup(context)



More information about the Bf-blender-cvs mailing list