diff options
author | Harley Acheson <harley.acheson@gmail.com> | 2021-11-01 18:42:07 +0300 |
---|---|---|
committer | Harley Acheson <harley.acheson@gmail.com> | 2021-11-01 18:48:56 +0300 |
commit | 69e504225804c0ce6ad60ffc90a78bbba93c5c1c (patch) | |
tree | 53e303cb271d3473785a1e2e130eda1d78c638fa /source/blender/editors/space_spreadsheet | |
parent | 06b183d1ca48ea638b8c54102c0c9adf55cef76f (diff) |
Fix T92655: spreadsheet_duplicate Split Exception
Check SpaceSpreadsheet's runtime is not null when trying to duplicate
the data when doing an area split.
See D13047 for further details.
Differential Revision: https://developer.blender.org/D13047
Reviewed by Jacques Lucke
Diffstat (limited to 'source/blender/editors/space_spreadsheet')
-rw-r--r-- | source/blender/editors/space_spreadsheet/space_spreadsheet.cc | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/source/blender/editors/space_spreadsheet/space_spreadsheet.cc b/source/blender/editors/space_spreadsheet/space_spreadsheet.cc index 73e0be76466..d54af7ffe2c 100644 --- a/source/blender/editors/space_spreadsheet/space_spreadsheet.cc +++ b/source/blender/editors/space_spreadsheet/space_spreadsheet.cc @@ -137,7 +137,12 @@ static SpaceLink *spreadsheet_duplicate(SpaceLink *sl) { const SpaceSpreadsheet *sspreadsheet_old = (SpaceSpreadsheet *)sl; SpaceSpreadsheet *sspreadsheet_new = (SpaceSpreadsheet *)MEM_dupallocN(sspreadsheet_old); - sspreadsheet_new->runtime = new SpaceSpreadsheet_Runtime(*sspreadsheet_old->runtime); + if (sspreadsheet_old->runtime) { + sspreadsheet_new->runtime = new SpaceSpreadsheet_Runtime(*sspreadsheet_old->runtime); + } + else { + sspreadsheet_new->runtime = new SpaceSpreadsheet_Runtime(); + } BLI_listbase_clear(&sspreadsheet_new->row_filters); LISTBASE_FOREACH (const SpreadsheetRowFilter *, src_filter, &sspreadsheet_old->row_filters) { |