Commit: c377cb2db5bf155cdf2e814dab352046001c3044
Author: Campbell Barton
Date:   Mon Feb 18 09:32:15 2019 +1100
Branches: master
https://developer.blender.org/rBc377cb2db5bf155cdf2e814dab352046001c3044

RNA: use clog for logging error messages

Some RNA errors are quite similar, use clog for consistent logging that
always includes the file, function and line number - making errors
quicker to troubleshoot.

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

M       source/blender/makesrna/intern/CMakeLists.txt
M       source/blender/makesrna/intern/makesrna.c
M       source/blender/makesrna/intern/rna_define.c

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

diff --git a/source/blender/makesrna/intern/CMakeLists.txt 
b/source/blender/makesrna/intern/CMakeLists.txt
index 84aeb29e45d..5188ac425bf 100644
--- a/source/blender/makesrna/intern/CMakeLists.txt
+++ b/source/blender/makesrna/intern/CMakeLists.txt
@@ -159,6 +159,7 @@ set(SRC
        rna_define.c
        ${DEFSRC}
        ${APISRC}
+       ../../../../intern/clog/clog.c
        ../../../../intern/guardedalloc/intern/mallocn.c
        ../../../../intern/guardedalloc/intern/mallocn_guarded_impl.c
        ../../../../intern/guardedalloc/intern/mallocn_lockfree_impl.c
@@ -166,7 +167,7 @@ set(SRC
 )
 
 set(INC
-
+    ../../../../intern/clog
 )
 
 set(INC_SYS
diff --git a/source/blender/makesrna/intern/makesrna.c 
b/source/blender/makesrna/intern/makesrna.c
index 72cffaaf8a3..46445a85f6d 100644
--- a/source/blender/makesrna/intern/makesrna.c
+++ b/source/blender/makesrna/intern/makesrna.c
@@ -40,6 +40,10 @@
 #  endif
 #endif
 
+#include "CLG_log.h"
+
+static CLG_LogRef LOG = {"makesrna"};
+
 /**
  * Variable to control debug output of makesrna.
  * debugSRNA:
@@ -105,15 +109,15 @@ static int replace_if_different(const char *tmpfile, 
const char *dep_files[])
                        if (fp_org) fclose(fp_org);                             
          \
                        if (fp_new) fclose(fp_new);                             
          \
                        if (remove(orgfile) != 0) {                             
          \
-                               fprintf(stderr, "%s:%d, Remove Error (%s): 
\"%s\"\n",         \
-                                       __FILE__, __LINE__, strerror(errno), 
orgfile);        \
+                               CLOG_ERROR(&LOG, "remove error (%s): \"%s\"",   
              \
+                                          strerror(errno), orgfile);           
              \
                                return -1;                                      
              \
                        }                                                       
          \
                }                                                               
      \
        }                                                                       
  \
        if (rename(tmpfile, orgfile) != 0) {                                    
  \
-               fprintf(stderr, "%s:%d, Rename Error (%s): \"%s\" -> \"%s\"\n", 
      \
-                       __FILE__, __LINE__, strerror(errno), tmpfile, orgfile); 
      \
+               CLOG_ERROR(&LOG, "rename error (%s): \"%s\" -> \"%s\"",         
      \
+                          strerror(errno), tmpfile, orgfile);                  
      \
                return -1;                                                      
      \
        }                                                                       
  \
        remove(tmpfile);                                                        
  \
@@ -178,7 +182,7 @@ static int replace_if_different(const char *tmpfile, const 
char *dep_files[])
 
        if (fp_new == NULL) {
                /* shouldn't happen, just to be safe */
-               fprintf(stderr, "%s:%d, open error: \"%s\"\n", __FILE__, 
__LINE__, tmpfile);
+               CLOG_ERROR(&LOG, "open error: \"%s\"", tmpfile);
                fclose(fp_org);
                return -1;
        }
@@ -197,10 +201,12 @@ static int replace_if_different(const char *tmpfile, 
const char *dep_files[])
        arr_new = MEM_mallocN(sizeof(char) * len_new, "rna_cmp_file_new");
        arr_org = MEM_mallocN(sizeof(char) * len_org, "rna_cmp_file_org");
 
-       if (fread(arr_new, sizeof(char), len_new, fp_new) != len_new)
-               fprintf(stderr, "%s:%d, error reading file %s for 
comparison.\n", __FILE__, __LINE__, tmpfile);
-       if (fread(arr_org, sizeof(char), len_org, fp_org) != len_org)
-               fprintf(stderr, "%s:%d, error reading file %s for 
comparison.\n", __FILE__, __LINE__, orgfile);
+       if (fread(arr_new, sizeof(char), len_new, fp_new) != len_new) {
+               CLOG_ERROR(&LOG, "unable to read file %s for comparison.", 
tmpfile);
+       }
+       if (fread(arr_org, sizeof(char), len_org, fp_org) != len_org) {
+               CLOG_ERROR(&LOG, "unable to read file %s for comparison.", 
orgfile);
+       }
 
        fclose(fp_new); fp_new = NULL;
        fclose(fp_org); fp_org = NULL;
@@ -533,8 +539,8 @@ static char *rna_def_property_get_func(FILE *f, StructRNA 
*srna, PropertyRNA *pr
 
        if (!manualfunc) {
                if (!dp->dnastructname || !dp->dnaname) {
-                       fprintf(stderr, "%s (0): %s.%s has no valid dna 
info.\n",
-                               __func__, srna->identifier, prop->identifier);
+                       CLOG_ERROR(&LOG, "%s.%s has no valid dna info.",
+                                  srna->identifier, prop->identifier);
                        DefRNA.error = 1;
                        return NULL;
                }
@@ -545,9 +551,9 @@ static char *rna_def_property_get_func(FILE *f, StructRNA 
*srna, PropertyRNA *pr
                        if (prop->type == PROP_FLOAT) {
                                if (IS_DNATYPE_FLOAT_COMPAT(dp->dnatype) == 0) {
                                        if (prop->subtype != PROP_COLOR_GAMMA) 
{ /* colors are an exception. these get translated */
-                                               fprintf(stderr, "%s (1): %s.%s 
is a '%s' but wrapped as type '%s'.\n",
-                                                       __func__, 
srna->identifier, prop->identifier, dp->dnatype,
-                                                       
RNA_property_typename(prop->type));
+                                               CLOG_ERROR(&LOG, "%s.%s is a 
'%s' but wrapped as type '%s'.",
+                                                          srna->identifier, 
prop->identifier, dp->dnatype,
+                                                          
RNA_property_typename(prop->type));
                                                DefRNA.error = 1;
                                                return NULL;
                                        }
@@ -555,9 +561,9 @@ static char *rna_def_property_get_func(FILE *f, StructRNA 
*srna, PropertyRNA *pr
                        }
                        else if (prop->type == PROP_INT || prop->type == 
PROP_BOOLEAN || prop->type == PROP_ENUM) {
                                if (IS_DNATYPE_INT_COMPAT(dp->dnatype) == 0) {
-                                       fprintf(stderr, "%s (2): %s.%s is a 
'%s' but wrapped as type '%s'.\n",
-                                               __func__, srna->identifier, 
prop->identifier, dp->dnatype,
-                                               
RNA_property_typename(prop->type));
+                                       CLOG_ERROR(&LOG, "%s.%s is a '%s' but 
wrapped as type '%s'.",
+                                                  srna->identifier, 
prop->identifier, dp->dnatype,
+                                                  
RNA_property_typename(prop->type));
                                        DefRNA.error = 1;
                                        return NULL;
                                }
@@ -833,8 +839,8 @@ static char *rna_def_property_set_func(FILE *f, StructRNA 
*srna, PropertyRNA *pr
        if (!manualfunc) {
                if (!dp->dnastructname || !dp->dnaname) {
                        if (prop->flag & PROP_EDITABLE) {
-                               fprintf(stderr, "%s: %s.%s has no valid dna 
info.\n",
-                                       __func__, srna->identifier, 
prop->identifier);
+                               CLOG_ERROR(&LOG, "%s.%s has no valid dna info.",
+                                          srna->identifier, prop->identifier);
                                DefRNA.error = 1;
                        }
                        return NULL;
@@ -1047,8 +1053,8 @@ static char *rna_def_property_length_func(FILE *f, 
StructRNA *srna, PropertyRNA
        if (prop->type == PROP_STRING) {
                if (!manualfunc) {
                        if (!dp->dnastructname || !dp->dnaname) {
-                               fprintf(stderr, "%s: %s.%s has no valid dna 
info.\n",
-                                       __func__, srna->identifier, 
prop->identifier);
+                               CLOG_ERROR(&LOG, "%s.%s has no valid dna info.",
+                                          srna->identifier, prop->identifier);
                                DefRNA.error = 1;
                                return NULL;
                        }
@@ -1073,8 +1079,8 @@ static char *rna_def_property_length_func(FILE *f, 
StructRNA *srna, PropertyRNA
        else if (prop->type == PROP_COLLECTION) {
                if (!manualfunc) {
                        if (prop->type == PROP_COLLECTION && 
(!(dp->dnalengthname || dp->dnalengthfixed) || !dp->dnaname)) {
-                               fprintf(stderr, "%s: %s.%s has no valid dna 
info.\n",
-                                       __func__, srna->identifier, 
prop->identifier);
+                               CLOG_ERROR(&LOG, "%s.%s has no valid dna info.",
+                                          srna->identifier, prop->identifier);
                                DefRNA.error = 1;
                                return NULL;
                        }
@@ -1117,8 +1123,8 @@ static char *rna_def_property_begin_func(FILE *f, 
StructRNA *srna, PropertyRNA *
 
        if (!manualfunc) {
                if (!dp->dnastructname || !dp->dnaname) {
-                       fprintf(stderr, "%s: %s.%s has no valid dna info.\n",
-                               __func__, srna->identifier, prop->identifier);
+                       CLOG_ERROR(&LOG, "%s.%s has no valid dna info.",
+                                  srna->identifier, prop->identifier);
                        DefRNA.error = 1;
                        return NULL;
                }
@@ -1529,8 +1535,8 @@ static void rna_def_property_funcs(FILE *f, StructRNA 
*srna, PropertyDefRNA *dp)
                        pprop->get = (void *)rna_def_property_get_func(f, srna, 
prop, dp, (const char *)pprop->get);
                        pprop->set = (void *)rna_def_property_set_func(f, srna, 
prop, dp, (const char *)pprop->set);
                        if (!pprop->type) {
-                               fprintf(stderr, "%s: %s.%s, pointer must have a 
struct type.\n",
-                                       __func__, srna->identifier, 
prop->identifier);
+                               CLOG_ERROR(&LOG, "%s.%s, pointer must have a 
struct type.",
+                                          srna->identifier, prop->identifier);
                                DefRNA.error = 1;
                        }
                        break;
@@ -1572,24 +1578,24 @@ static void rna_def_property_funcs(FILE *f, StructRNA 
*srna, PropertyDefRNA *dp)
 
                        if (!(prop->flag & PROP_IDPROPERTY)) {
                                if (!cprop->begin) {
-                                       fprintf(stderr, "%s: %s.%s, collection 
must have a begin function.\n",
-                                               __func__, srna->identifier, 
prop->identifier);
+                                       CLOG_ERROR(&LOG, "%s.%s, collection 
must have a begin function.",
+                                                  srna->identifier, 
prop->identifier);
                                        DefRNA.error = 1;
                                }
                                if (!cprop->next) {
-                                       fprintf(stderr, "%s: %s.%s, collection 
must have a next function.\n",
-                                               __func__, srna->identifier, 
prop->identifier);
+                                       CLOG_ERROR(&LOG, "%s.%s, collection 
must have a next function.",
+                                                  srna->identifier, 
prop->identifier);
                                        DefRNA.error = 1;
                                }
                                if (!cprop->get) {
-                                       fprintf(stderr, "%s: %s.%s, collection 
must have a get function.\n",
-                                               __func__, srna->identifier, 
prop->identifier);
+                                       CLOG_ERROR(&LOG, "%s.%s, collection 
must have a get function.",
+                                                  srna->identifier, 
prop->identifier);
                                        DefRNA.error = 1;
                                }
                        }
                        if (!cprop->item_type) {
-                               fprintf(stderr, "%s: %s.%s, collection must 
have a struct type.\n",
-                                       __func__, srna->identifier, 
prop->identifier);
+                               CLOG_ERROR(&LOG, "%s.%s, collection must have a 
struct type.",
+                                          srna->identifier, prop->identifier);
                                DefRNA.error = 1;
                        }
                        break;
@@ -2944,23 +2950,23 @@ static void rna_generate_property(FILE *f, StructRNA 
*srna, const char *nest, Pr
 
                                if (prop->flag & PROP_ENUM_FLAG) {
                                        if (eprop->defaultvalue & ~totflag) {
-                                               fprintf(stderr, "%s: %s%s.%s, 
enum default includes unused bits (%d).\n",
-                                                       __func__, 
srna->identifier, errnest, prop->identifier,
+                                               CLOG_ERROR(&LOG, "%s%s.%s, enum 
default includes unused bits (%d).",
+                                                          srna->identifier, 
errnest, prop->identifier,
                                                        eprop->defaultvalue & 
~totflag);
                                                DefRNA.error = 1;
                                        }
                                }
                                else {
                                        if (!defaultfound) {
-                                               fp

@@ Diff output truncated at 10240 characters. @@

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to