[Bf-blender-cvs] [e5cd770e9fe] master: Cleanup: rename Curve.len_wchar to len_char32

Campbell Barton noreply at git.blender.org
Thu Jul 23 03:51:23 CEST 2020


Commit: e5cd770e9feeb5942b3d3d84fdde68bcbc391953
Author: Campbell Barton
Date:   Thu Jul 23 11:50:03 2020 +1000
Branches: master
https://developer.blender.org/rBe5cd770e9feeb5942b3d3d84fdde68bcbc391953

Cleanup: rename Curve.len_wchar to len_char32

The name was misleading as the length is for char32_t, not wchar_t.

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

M	source/blender/blenkernel/intern/curve.c
M	source/blender/blenkernel/intern/font.c
M	source/blender/blenkernel/intern/object_dupli.c
M	source/blender/blenloader/intern/readfile.c
M	source/blender/blenloader/intern/versioning_260.c
M	source/blender/blenloader/intern/writefile.c
M	source/blender/editors/curve/editfont.c
M	source/blender/makesdna/DNA_curve_types.h
M	source/blender/makesdna/intern/dna_rename_defs.h
M	source/blender/makesrna/intern/rna_curve.c

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

diff --git a/source/blender/blenkernel/intern/curve.c b/source/blender/blenkernel/intern/curve.c
index d242337d5a7..3dc7ae39893 100644
--- a/source/blender/blenkernel/intern/curve.c
+++ b/source/blender/blenkernel/intern/curve.c
@@ -223,7 +223,7 @@ void BKE_curve_init(Curve *cu, const short curve_type)
     cu->vfont->id.us += 4;
     cu->str = MEM_malloc_arrayN(12, sizeof(unsigned char), "str");
     BLI_strncpy(cu->str, "Text", 12);
-    cu->len = cu->len_wchar = cu->pos = 4;
+    cu->len = cu->len_char32 = cu->pos = 4;
     cu->strinfo = MEM_calloc_arrayN(12, sizeof(CharInfo), "strinfo new");
     cu->totbox = cu->actbox = 1;
     cu->tb = MEM_calloc_arrayN(MAXTEXTBOX, sizeof(TextBox), "textbox");
@@ -5437,7 +5437,7 @@ void BKE_curve_material_index_remove(Curve *cu, int index)
   if (curvetype == OB_FONT) {
     struct CharInfo *info = cu->strinfo;
     int i;
-    for (i = cu->len_wchar - 1; i >= 0; i--, info++) {
+    for (i = cu->len_char32 - 1; i >= 0; i--, info++) {
       if (info->mat_nr && info->mat_nr >= index) {
         info->mat_nr--;
       }
@@ -5461,7 +5461,7 @@ bool BKE_curve_material_index_used(Curve *cu, int index)
   if (curvetype == OB_FONT) {
     struct CharInfo *info = cu->strinfo;
     int i;
-    for (i = cu->len_wchar - 1; i >= 0; i--, info++) {
+    for (i = cu->len_char32 - 1; i >= 0; i--, info++) {
       if (info->mat_nr == index) {
         return true;
       }
@@ -5487,7 +5487,7 @@ void BKE_curve_material_index_clear(Curve *cu)
   if (curvetype == OB_FONT) {
     struct CharInfo *info = cu->strinfo;
     int i;
-    for (i = cu->len_wchar - 1; i >= 0; i--, info++) {
+    for (i = cu->len_char32 - 1; i >= 0; i--, info++) {
       info->mat_nr = 0;
     }
   }
@@ -5509,7 +5509,7 @@ bool BKE_curve_material_index_validate(Curve *cu)
     CharInfo *info = cu->strinfo;
     const int max_idx = max_ii(0, cu->totcol); /* OB_FONT use 1 as first mat index, not 0!!! */
     int i;
-    for (i = cu->len_wchar - 1; i >= 0; i--, info++) {
+    for (i = cu->len_char32 - 1; i >= 0; i--, info++) {
       if (info->mat_nr > max_idx) {
         info->mat_nr = 0;
         is_valid = false;
@@ -5557,7 +5557,7 @@ void BKE_curve_material_remap(Curve *cu, const unsigned int *remap, unsigned int
     }
     else {
       strinfo = cu->strinfo;
-      charinfo_len = cu->len_wchar;
+      charinfo_len = cu->len_char32;
     }
 
     for (i = 0; i <= charinfo_len; i++) {
diff --git a/source/blender/blenkernel/intern/font.c b/source/blender/blenkernel/intern/font.c
index dfa5ff6975f..958acf0589b 100644
--- a/source/blender/blenkernel/intern/font.c
+++ b/source/blender/blenkernel/intern/font.c
@@ -797,7 +797,7 @@ static bool vfont_to_curve(Object *ob,
   }
   else {
     char32_t *mem_tmp;
-    slen = cu->len_wchar;
+    slen = cu->len_char32;
 
     /* Create unicode string */
     mem_tmp = MEM_malloc_arrayN((slen + 1), sizeof(*mem_tmp), "convertedmem");
diff --git a/source/blender/blenkernel/intern/object_dupli.c b/source/blender/blenkernel/intern/object_dupli.c
index f498e147110..413acde62d5 100644
--- a/source/blender/blenkernel/intern/object_dupli.c
+++ b/source/blender/blenkernel/intern/object_dupli.c
@@ -523,7 +523,7 @@ static void make_duplis_font(const DupliContext *ctx)
   /* Safety check even if it might fail badly when called for original object. */
   const bool is_eval_curve = DEG_is_evaluated_id(&cu->id);
 
-  /* advance matching BLI_strncpy_wchar_from_utf8 */
+  /* Advance matching BLI_str_utf8_as_utf32. */
   for (a = 0; a < text_len; a++, ct++) {
 
     /* XXX That G.main is *really* ugly, but not sure what to do here...
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c
index 9320187f2a0..db6d5136391 100644
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@ -4162,7 +4162,7 @@ static void direct_link_curve(BlendDataReader *reader, Curve *cu)
   direct_link_animdata(reader, cu->adt);
 
   /* Protect against integer overflow vulnerability. */
-  CLAMP(cu->len_wchar, 0, INT_MAX - 4);
+  CLAMP(cu->len_char32, 0, INT_MAX - 4);
 
   BLO_read_pointer_array(reader, (void **)&cu->mat);
 
diff --git a/source/blender/blenloader/intern/versioning_260.c b/source/blender/blenloader/intern/versioning_260.c
index b3bf8991c3e..5e91fea3e20 100644
--- a/source/blender/blenloader/intern/versioning_260.c
+++ b/source/blender/blenloader/intern/versioning_260.c
@@ -2520,7 +2520,7 @@ void blo_do_versions_260(FileData *fd, Library *UNUSED(lib), Main *bmain)
 
     for (cu = bmain->curves.first; cu; cu = cu->id.next) {
       if (cu->str) {
-        cu->len_wchar = BLI_strlen_utf8(cu->str);
+        cu->len_char32 = BLI_strlen_utf8(cu->str);
       }
     }
   }
diff --git a/source/blender/blenloader/intern/writefile.c b/source/blender/blenloader/intern/writefile.c
index 46ac6b43c92..7f3fbee81e3 100644
--- a/source/blender/blenloader/intern/writefile.c
+++ b/source/blender/blenloader/intern/writefile.c
@@ -2007,7 +2007,7 @@ static void write_curve(BlendWriter *writer, Curve *cu, const void *id_address)
 
     if (cu->vfont) {
       BLO_write_raw(writer, cu->len + 1, cu->str);
-      BLO_write_struct_array(writer, CharInfo, cu->len_wchar + 1, cu->strinfo);
+      BLO_write_struct_array(writer, CharInfo, cu->len_char32 + 1, cu->strinfo);
       BLO_write_struct_array(writer, TextBox, cu->totbox, cu->tb);
     }
     else {
diff --git a/source/blender/editors/curve/editfont.c b/source/blender/editors/curve/editfont.c
index b759277572c..a89b352630b 100644
--- a/source/blender/editors/curve/editfont.c
+++ b/source/blender/editors/curve/editfont.c
@@ -682,7 +682,7 @@ static void txt_add_object(bContext *C, TextLine *firstline, int totline, const
   cu->strinfo = MEM_callocN((nchars + 4) * sizeof(CharInfo), "strinfo");
 
   cu->len = 0;
-  cu->len_wchar = nchars - 1;
+  cu->len_char32 = nchars - 1;
   cu->pos = 0;
 
   s = cu->str;
@@ -703,7 +703,7 @@ static void txt_add_object(bContext *C, TextLine *firstline, int totline, const
     }
   }
 
-  cu->pos = cu->len_wchar;
+  cu->pos = cu->len_char32;
   *s = '\0';
 
   WM_event_add_notifier(C, NC_OBJECT | NA_ADDED, obedit);
@@ -1867,7 +1867,7 @@ void ED_curve_editfont_make(Object *obedit)
 {
   Curve *cu = obedit->data;
   EditFont *ef = cu->editfont;
-  int len_wchar;
+  int len_char32;
 
   if (ef == NULL) {
     ef = cu->editfont = MEM_callocN(sizeof(EditFont), "editfont");
@@ -1877,9 +1877,9 @@ void ED_curve_editfont_make(Object *obedit)
   }
 
   /* Convert the original text to wchar_t */
-  len_wchar = BLI_str_utf8_as_utf32(ef->textbuf, cu->str, MAXTEXT + 4);
-  BLI_assert(len_wchar == cu->len_wchar);
-  ef->len = len_wchar;
+  len_char32 = BLI_str_utf8_as_utf32(ef->textbuf, cu->str, MAXTEXT + 4);
+  BLI_assert(len_char32 == cu->len_char32);
+  ef->len = len_char32;
   BLI_assert(ef->len >= 0);
 
   memcpy(ef->textbufinfo, cu->strinfo, ef->len * sizeof(CharInfo));
@@ -1908,7 +1908,7 @@ void ED_curve_editfont_load(Object *obedit)
   MEM_freeN(cu->str);
 
   /* Calculate the actual string length in UTF-8 variable characters */
-  cu->len_wchar = ef->len;
+  cu->len_char32 = ef->len;
   cu->len = BLI_str_utf32_as_utf8_len(ef->textbuf);
 
   /* Alloc memory for UTF-8 variable char length string */
@@ -1920,8 +1920,8 @@ void ED_curve_editfont_load(Object *obedit)
   if (cu->strinfo) {
     MEM_freeN(cu->strinfo);
   }
-  cu->strinfo = MEM_callocN((cu->len_wchar + 4) * sizeof(CharInfo), "texteditinfo");
-  memcpy(cu->strinfo, ef->textbufinfo, cu->len_wchar * sizeof(CharInfo));
+  cu->strinfo = MEM_callocN((cu->len_char32 + 4) * sizeof(CharInfo), "texteditinfo");
+  memcpy(cu->strinfo, ef->textbufinfo, cu->len_char32 * sizeof(CharInfo));
 
   /* Other vars */
   cu->pos = ef->pos;
diff --git a/source/blender/makesdna/DNA_curve_types.h b/source/blender/makesdna/DNA_curve_types.h
index b2902407a15..9f724973b6c 100644
--- a/source/blender/makesdna/DNA_curve_types.h
+++ b/source/blender/makesdna/DNA_curve_types.h
@@ -274,9 +274,12 @@ typedef struct Curve {
   int selstart, selend;
 
   /* text data */
-  /** Number of characters (strinfo). */
-  int len_wchar;
-  /** Number of bytes (str - utf8). */
+  /**
+   * Number of characters (unicode code-points)
+   * This is the length of #Curve.strinfo and the result of `BLI_strlen_utf8(cu->str)`.
+   */
+  int len_char32;
+  /** Number of bytes: `strlen(Curve.str)`. */
   int len;
   char *str;
   struct EditFont *editfont;
diff --git a/source/blender/makesdna/intern/dna_rename_defs.h b/source/blender/makesdna/intern/dna_rename_defs.h
index f2cf72843bd..49fa4f797bb 100644
--- a/source/blender/makesdna/intern/dna_rename_defs.h
+++ b/source/blender/makesdna/intern/dna_rename_defs.h
@@ -67,6 +67,7 @@ DNA_STRUCT_RENAME_ELEM(Bone, scaleOut, scale_out_x)
 DNA_STRUCT_RENAME_ELEM(BrushGpencilSettings, gradient_f, hardeness)
 DNA_STRUCT_RENAME_ELEM(BrushGpencilSettings, gradient_s, aspect_ratio)
 DNA_STRUCT_RENAME_ELEM(Camera, YF_dofdist, dof_distance)
+DNA_STRUCT_RENAME_ELEM(Curve, len_wchar, len_char32)
 DNA_STRUCT_RENAME_ELEM(Camera, clipend, clip_end)
 DNA_STRUCT_RENAME_ELEM(Camera, clipsta, clip_start)
 DNA_STRUCT_RENAME_ELEM(Collection, dupli_ofs, instance_offset)
diff --git a/source/blender/makesrna/intern/rna_curve.c b/source/blender/makesrna/intern/rna_curve.c
index 771235c85aa..8a3186ea7fe 100644
--- a/source/blender/makesrna/intern/rna_curve.c
+++ b/source/blender/makesrna/intern/rna_curve.c
@@ -570,7 +570,7 @@ static void rna_Curve_body_set(PointerRNA *ptr, const char *value)
 
   Curve *cu = (Curve *)ptr->owner_id;
 
-  cu->len_wchar = len_chars;
+  cu->len_char32 = len_chars;
   cu->len = len_bytes;
   cu->pos = len_chars;
 
@@ -1206,7 +1206,7 @@ static void rna_def_font(BlenderRNA *UNUSED(brna), StructRNA *srna)
   RNA_def_property_update(prop, 0, "rna_Curve_update_data");
 
   prop = RNA_def_property(srna, "body_format", PROP_COLLECTION, PROP_NONE);
-  RNA_def_property_collection_sdna(prop, NULL, "strinfo", "len_wchar");
+  RNA_def_property_collection_sdna(prop, NULL, "strinfo", "len_char32");
   RNA_def_property_struct_type(prop, "TextCharacterFormat");
   RNA_def_property_ui_text(prop, "Character Info", "Stores the style of each character");



More information about the Bf-blender-cvs mailing list