Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacques Lucke <jacques@blender.org>2021-03-11 15:28:06 +0300
committerJacques Lucke <jacques@blender.org>2021-03-11 15:28:28 +0300
commitd4d03f736b85f9db0d738428cf9521b2084232db (patch)
treea7d21e09d1f628f2ab70a9268a31d16dc25f8164
parentfade765bf3488676141b28556969130eef9b70bb (diff)
Fix (unreported): crash on undo when using pinned id in spreadsheet
Now the behavior is the same as in the properties editor, as far as I can tell.
-rw-r--r--release/scripts/startup/bl_operators/spreadsheet.py2
-rw-r--r--source/blender/blenloader/intern/readfile.c6
2 files changed, 7 insertions, 1 deletions
diff --git a/release/scripts/startup/bl_operators/spreadsheet.py b/release/scripts/startup/bl_operators/spreadsheet.py
index a2f9b2ad412..fa6568f6f11 100644
--- a/release/scripts/startup/bl_operators/spreadsheet.py
+++ b/release/scripts/startup/bl_operators/spreadsheet.py
@@ -24,7 +24,7 @@ class SPREADSHEET_OT_toggle_pin(bpy.types.Operator):
'''Turn on or off pinning'''
bl_idname = "spreadsheet.toggle_pin"
bl_label = "Toggle Pin"
- bl_options = {'REGISTER', 'UNDO'}
+ bl_options = {'REGISTER'}
@classmethod
def poll(cls, context):
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c
index de7353d827a..302abf35f1c 100644
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@ -2985,6 +2985,12 @@ static void lib_link_workspace_layout_restore(struct IDNameLib_Map *id_map,
sclip->scopes.ok = 0;
}
+ else if (sl->spacetype == SPACE_SPREADSHEET) {
+ SpaceSpreadsheet *sspreadsheet = (SpaceSpreadsheet *)sl;
+
+ sspreadsheet->pinned_id = restore_pointer_by_name(
+ id_map, sspreadsheet->pinned_id, USER_IGNORE);
+ }
}
}
}