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:
authorCampbell Barton <ideasman42@gmail.com>2021-08-04 05:43:07 +0300
committerCampbell Barton <ideasman42@gmail.com>2021-08-04 05:43:07 +0300
commit5950b3ab739f0d57cdac44c57d4448c0a5dbebb2 (patch)
tree3cf5a7a0f1591a3fd441941fa03251d449cab94d /source/blender/blenloader/intern/versioning_280.c
parent71dc134f8908cda02a3e5e5800bb9da966c10ad2 (diff)
Cleanup: de-duplicate ID renaming utility for versioning
Diffstat (limited to 'source/blender/blenloader/intern/versioning_280.c')
-rw-r--r--source/blender/blenloader/intern/versioning_280.c53
1 files changed, 13 insertions, 40 deletions
diff --git a/source/blender/blenloader/intern/versioning_280.c b/source/blender/blenloader/intern/versioning_280.c
index af05c4b902f..93959237f29 100644
--- a/source/blender/blenloader/intern/versioning_280.c
+++ b/source/blender/blenloader/intern/versioning_280.c
@@ -111,40 +111,13 @@
#include "BLO_readfile.h"
#include "readfile.h"
+#include "versioning_common.h"
+
#include "MEM_guardedalloc.h"
/* Make preferences read-only, use versioning_userdef.c. */
#define U (*((const UserDef *)&U))
-/**
- * Rename if the ID doesn't exist.
- */
-static ID *rename_id_for_versioning(Main *bmain,
- const short id_type,
- const char *name_src,
- const char *name_dst)
-{
- /* We can ignore libraries */
- ListBase *lb = which_libbase(bmain, id_type);
- ID *id = NULL;
- LISTBASE_FOREACH (ID *, idtest, lb) {
- if (idtest->lib == NULL) {
- if (STREQ(idtest->name + 2, name_src)) {
- id = idtest;
- }
- if (STREQ(idtest->name + 2, name_dst)) {
- return NULL;
- }
- }
- }
- if (id != NULL) {
- BLI_strncpy(id->name + 2, name_dst, sizeof(id->name) - 2);
- /* We know it's unique, this just sorts. */
- BLI_libblock_ensure_unique_name(bmain, id->name);
- }
- return id;
-}
-
static bScreen *screen_parent_find(const bScreen *screen)
{
/* Can avoid lookup if screen state isn't maximized/full
@@ -1679,32 +1652,32 @@ void do_versions_after_linking_280(Main *bmain, ReportList *UNUSED(reports))
Brush *brush;
Material *ma;
/* Pen Soft brush. */
- brush = (Brush *)rename_id_for_versioning(bmain, ID_BR, "Draw Soft", "Pencil Soft");
+ brush = (Brush *)do_versions_rename_id(bmain, ID_BR, "Draw Soft", "Pencil Soft");
if (brush) {
brush->gpencil_settings->icon_id = GP_BRUSH_ICON_PEN;
}
- rename_id_for_versioning(bmain, ID_BR, "Draw Pencil", "Pencil");
- rename_id_for_versioning(bmain, ID_BR, "Draw Pen", "Pen");
- rename_id_for_versioning(bmain, ID_BR, "Draw Ink", "Ink Pen");
- rename_id_for_versioning(bmain, ID_BR, "Draw Noise", "Ink Pen Rough");
- rename_id_for_versioning(bmain, ID_BR, "Draw Marker", "Marker Bold");
- rename_id_for_versioning(bmain, ID_BR, "Draw Block", "Marker Chisel");
+ do_versions_rename_id(bmain, ID_BR, "Draw Pencil", "Pencil");
+ do_versions_rename_id(bmain, ID_BR, "Draw Pen", "Pen");
+ do_versions_rename_id(bmain, ID_BR, "Draw Ink", "Ink Pen");
+ do_versions_rename_id(bmain, ID_BR, "Draw Noise", "Ink Pen Rough");
+ do_versions_rename_id(bmain, ID_BR, "Draw Marker", "Marker Bold");
+ do_versions_rename_id(bmain, ID_BR, "Draw Block", "Marker Chisel");
ma = BLI_findstring(&bmain->materials, "Black", offsetof(ID, name) + 2);
if (ma && ma->gp_style) {
- rename_id_for_versioning(bmain, ID_MA, "Black", "Solid Stroke");
+ do_versions_rename_id(bmain, ID_MA, "Black", "Solid Stroke");
}
ma = BLI_findstring(&bmain->materials, "Red", offsetof(ID, name) + 2);
if (ma && ma->gp_style) {
- rename_id_for_versioning(bmain, ID_MA, "Red", "Squares Stroke");
+ do_versions_rename_id(bmain, ID_MA, "Red", "Squares Stroke");
}
ma = BLI_findstring(&bmain->materials, "Grey", offsetof(ID, name) + 2);
if (ma && ma->gp_style) {
- rename_id_for_versioning(bmain, ID_MA, "Grey", "Solid Fill");
+ do_versions_rename_id(bmain, ID_MA, "Grey", "Solid Fill");
}
ma = BLI_findstring(&bmain->materials, "Black Dots", offsetof(ID, name) + 2);
if (ma && ma->gp_style) {
- rename_id_for_versioning(bmain, ID_MA, "Black Dots", "Dots Stroke");
+ do_versions_rename_id(bmain, ID_MA, "Black Dots", "Dots Stroke");
}
brush = BLI_findstring(&bmain->brushes, "Pencil", offsetof(ID, name) + 2);