Commit: 3f82e829e5e014002913181e4738367d96af34b7
Author: Sergey Sharybin
Date:   Fri Dec 6 01:10:16 2013 +0600
http://developer.blender.org/rB3f82e829e5e014002913181e4738367d96af34b7

Correction to fix of T37688

rB68d39a262c90 didn't check correct file for doing
versioning code. It shall check userprefs.blend not
startup.blend.

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

M       source/blender/windowmanager/intern/wm_files.c

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

diff --git a/source/blender/windowmanager/intern/wm_files.c 
b/source/blender/windowmanager/intern/wm_files.c
index efbc0d7..5939128 100644
--- a/source/blender/windowmanager/intern/wm_files.c
+++ b/source/blender/windowmanager/intern/wm_files.c
@@ -526,16 +526,16 @@ int wm_homefile_read(bContext *C, ReportList *reports, 
bool from_memory, const c
        char prefstr[FILE_MAX];
        int success = 0;
 
-       /* Indicates whether file was really load from memory.
+       /* Indicates whether user prefereneces were really load from memory.
         *
         * This is used for versioning code, and for this we can not rely on 
from_memory
         * passed via argument. This is because there might be configuration 
folder
-        * exists but it might not have startup.blend and in this case we 
fallback to
+        * exists but it might not have userpref.blend and in this case we 
fallback to
         * reading home file from memory.
         *
         * And in this case versioning code is to be run.
         */
-       bool read_file_from_memory = false;
+       bool read_userdef_from_memory = true;
 
        /* options exclude eachother */
        BLI_assert((from_memory && custom_file) == 0);
@@ -589,7 +589,6 @@ int wm_homefile_read(bContext *C, ReportList *reports, bool 
from_memory, const c
        }
 
        if (success == 0) {
-               read_file_from_memory = true;
                success = BKE_read_file_from_memory(C, datatoc_startup_blend, 
datatoc_startup_blend_size, NULL, true);
                if (wmbase.first == NULL) wm_clear_default_size(C);
                BLI_init_temporary_dir(U.tempdir);
@@ -604,7 +603,10 @@ int wm_homefile_read(bContext *C, ReportList *reports, 
bool from_memory, const c
        /* check new prefs only after startup.blend was finished */
        if (!from_memory && BLI_exists(prefstr)) {
                int done = BKE_read_file_userdef(prefstr, NULL);
-               if (done) printf("Read new prefs: %s\n", prefstr);
+               if (done) {
+                       read_userdef_from_memory = false;
+                       printf("Read new prefs: %s\n", prefstr);
+               }
        }
        
        /* prevent buggy files that had G_FILE_RELATIVE_REMAP written out by 
mistake. Screws up autosaves otherwise
@@ -612,7 +614,7 @@ int wm_homefile_read(bContext *C, ReportList *reports, bool 
from_memory, const c
        G.fileflags &= ~G_FILE_RELATIVE_REMAP;
        
        /* check userdef before open window, keymaps etc */
-       wm_init_userdef(C, read_file_from_memory);
+       wm_init_userdef(C, read_userdef_from_memory);
        
        /* match the read WM with current WM */
        wm_window_match_do(C, &wmbase);

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

Reply via email to