[Bf-blender-cvs] [60d2570ed7f] soc-2020-info-editor: Fixes for clog rna access
Mateusz GrzeliÅski
noreply at git.blender.org
Tue Aug 4 14:14:09 CEST 2020
Commit: 60d2570ed7f6652649ca2d7b628b74a393d6f56e
Author: Mateusz Grzeliński
Date: Mon Aug 3 18:26:10 2020 +0200
Branches: soc-2020-info-editor
https://developer.blender.org/rB60d2570ed7f6652649ca2d7b628b74a393d6f56e
Fixes for clog rna access
- fix: incorrect log level type
- fix: move buffer of write
- add ranges for rna access
===================================================================
M intern/clog/CLG_log.h
M intern/clog/clog.c
M source/blender/makesrna/intern/rna_userdef.c
===================================================================
diff --git a/intern/clog/CLG_log.h b/intern/clog/CLG_log.h
index 6698e232798..39917f2145e 100644
--- a/intern/clog/CLG_log.h
+++ b/intern/clog/CLG_log.h
@@ -191,7 +191,7 @@ void CLG_type_filter_exclude(const char *type_filter, int type_filter_len);
enum CLG_Severity CLG_severity_level_get(void);
void CLG_severity_level_set(enum CLG_Severity log_level);
-short CLG_level_get(void);
+unsigned short CLG_level_get(void);
void CLG_level_set(unsigned short log_level);
struct LogRecordList *CLG_log_record_get(void);
diff --git a/intern/clog/clog.c b/intern/clog/clog.c
index 591b6564162..7e92024adcb 100644
--- a/intern/clog/clog.c
+++ b/intern/clog/clog.c
@@ -97,8 +97,8 @@ typedef struct CLogContext {
/** For new types. */
struct {
- short level;
- short severity_level;
+ unsigned short level;
+ unsigned short severity_level;
} default_type;
struct {
@@ -798,7 +798,7 @@ static void CLG_ctx_severity_level_set(CLogContext *ctx, enum CLG_Severity level
}
}
-static short CLG_ctx_level_get(CLogContext *ctx)
+static unsigned short CLG_ctx_level_get(CLogContext *ctx)
{
return ctx->default_type.level;
}
@@ -953,24 +953,24 @@ int CLG_type_filter_get(char *buff, int buff_len)
CLG_IDFilter *filters_iter = g_ctx->filters[0]; /* exclude filters */
while (filters_iter) {
if (filters_iter->next == NULL) {
- written += sprintf(buff, "^%s", filters_iter->match);
+ written += sprintf(buff + written, "^%s", filters_iter->match);
}
else {
- written += sprintf(buff, "^%s,", filters_iter->match);
+ written += sprintf(buff + written, "^%s,", filters_iter->match);
}
filters_iter = filters_iter->next;
}
filters_iter = g_ctx->filters[1]; /* include filters */
if (written != 0 && buff[written - 1] != ',') {
- written += sprintf(buff, ",");
+ written += sprintf(buff + written, ",");
}
while (filters_iter) {
if (filters_iter->next == NULL) {
- written += sprintf(buff, "%s", filters_iter->match);
+ written += sprintf(buff + written, "%s", filters_iter->match);
}
else {
- written += sprintf(buff, "%s,", filters_iter->match);
+ written += sprintf(buff + written, "%s,", filters_iter->match);
}
filters_iter = filters_iter->next;
}
@@ -1003,7 +1003,7 @@ void CLG_level_set(unsigned short level)
CLG_ctx_level_set(g_ctx, level);
}
-short CLG_level_get()
+unsigned short CLG_level_get()
{
return CLG_ctx_level_get(g_ctx);
}
diff --git a/source/blender/makesrna/intern/rna_userdef.c b/source/blender/makesrna/intern/rna_userdef.c
index c7d7a257382..44b9af9b6e5 100644
--- a/source/blender/makesrna/intern/rna_userdef.c
+++ b/source/blender/makesrna/intern/rna_userdef.c
@@ -1097,6 +1097,13 @@ static void rna_clog_log_level_set(PointerRNA *UNUSED(ptr), int value)
CLG_level_set(value);
}
+static void rna_clog_log_level_range(
+ PointerRNA *UNUSED(ptr), int *min, int *max, int *UNUSED(softmin), int *UNUSED(softmax))
+{
+ *min = 0;
+ *max = USHRT_MAX;
+}
+
/*
static void rna_Userdef_log_filter_update(struct Main *UNUSED(main),
struct Scene *UNUSED(scene),
@@ -1178,6 +1185,15 @@ static void rna_verbose_set(PointerRNA *UNUSED(ptr), int value)
# endif
}
+static void rna_verbose_range(
+ PointerRNA *UNUSED(ptr), int *min, int *max, int *softmin, int *softmax)
+{
+ *min = INT_MIN;
+ *max = INT_MAX;
+ *softmin = 0;
+ *softmax = INT_MAX;
+}
+
static void rna_clog_log_output_file_get(PointerRNA *UNUSED(ptr), char *value)
{
BLI_strncpy(value, CLG_file_output_path_get(), FILE_MAX);
@@ -1212,6 +1228,15 @@ static void rna_debug_value_set(PointerRNA *UNUSED(ptr), int value)
{
G.debug_value = value;
}
+
+static void rna_debug_value_range(
+ PointerRNA *UNUSED(ptr), int *min, int *max, int *softmin, int *softmax)
+{
+ *min = SHRT_MIN;
+ *max = SHRT_MAX;
+ *softmin = SHRT_MIN;
+ *softmax = SHRT_MAX;
+}
#else
# define USERDEF_TAG_DIRTY_PROPERTY_UPDATE_ENABLE \
@@ -5769,9 +5794,11 @@ static void rna_def_userdef_system(BlenderRNA *brna)
prop = RNA_def_property(srna, "log_level", PROP_INT, PROP_NONE);
RNA_def_property_int_funcs(
- prop, "rna_clog_log_level_get", "rna_clog_log_level_set", NULL);
- RNA_def_property_ui_text(
- prop, "Log Level", "Log level, when severity is set to verbose or debug");
+ prop, "rna_clog_log_level_get", "rna_clog_log_level_set", "rna_clog_log_level_range");
+ RNA_def_property_ui_text(prop,
+ "Log Level",
+ "Log level, when severity is set to verbose or debug. "
+ "The most silent is 0, the most talkative is 65535");
prop = RNA_def_property(srna, "log_filter", PROP_STRING, PROP_NONE);
RNA_def_property_string_sdna(prop, NULL, "log_filter");
@@ -5803,7 +5830,7 @@ static void rna_def_userdef_system(BlenderRNA *brna)
RNA_def_property_ui_text(prop, "Log Output File", "");
prop = RNA_def_property(srna, "verbose", PROP_INT, PROP_NONE);
- RNA_def_property_int_funcs(prop, "rna_verbose_get", "rna_verbose_set", NULL);
+ RNA_def_property_int_funcs(prop, "rna_verbose_get", "rna_verbose_set", "rna_verbose_range");
RNA_def_property_ui_text(prop, "Verbosity Level", "Verbosity for libraries that support it");
/* TODO (grzelins) now we can start removing bpy.app.debug */
@@ -5858,7 +5885,7 @@ static void rna_def_userdef_system(BlenderRNA *brna)
/* TODO (grzelins) now we can remove WM_OT_debug_menu */
prop = RNA_def_property(srna, "debug_value", PROP_INT, PROP_NONE);
- RNA_def_property_int_funcs(prop, "rna_debug_value_get", "rna_debug_value_set", NULL);
+ RNA_def_property_int_funcs(prop, "rna_debug_value_get", "rna_debug_value_set", "rna_debug_value_range");
RNA_def_property_ui_text(prop, "Debug Value", "Only developers know what is does");
}
More information about the Bf-blender-cvs
mailing list