diff options
author | Campbell Barton <ideasman42@gmail.com> | 2015-05-04 09:12:12 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2015-05-04 09:12:12 +0300 |
commit | c9e5e81064d4ce4863d113ea5dc3773500f01d7d (patch) | |
tree | 5e163c1285508f5865f342329d1c88e92eeae653 /source/blender/blenloader | |
parent | 77e6a001a96b7eb3b2b1c2216a48c85c1b6906e0 (diff) |
Button Space: clear pin flag when NULL'ing pointer
Diffstat (limited to 'source/blender/blenloader')
-rw-r--r-- | source/blender/blenloader/intern/readfile.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c index d8d56e4cfd8..4efb61a7efc 100644 --- a/source/blender/blenloader/intern/readfile.c +++ b/source/blender/blenloader/intern/readfile.c @@ -5975,6 +5975,9 @@ static void lib_link_screen(FileData *fd, Main *main) else if (sl->spacetype == SPACE_BUTS) { SpaceButs *sbuts = (SpaceButs *)sl; sbuts->pinid = newlibadr(fd, sc->id.lib, sbuts->pinid); + if (sbuts->pinid == NULL) { + sbuts->flag &= ~SB_PIN_CONTEXT; + } } else if (sl->spacetype == SPACE_FILE) { ; @@ -6304,6 +6307,9 @@ void blo_lib_link_screen_restore(Main *newmain, bScreen *curscreen, Scene *cursc else if (sl->spacetype == SPACE_BUTS) { SpaceButs *sbuts = (SpaceButs *)sl; sbuts->pinid = restore_pointer_by_name(newmain, sbuts->pinid, USER_IGNORE); + if (sbuts->pinid == NULL) { + sbuts->flag &= ~SB_PIN_CONTEXT; + } /* TODO: restore path pointers: T40046 * (complicated because this contains data pointers too, not just ID)*/ |