[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [59784] trunk/blender: Fix a few issues reported by coverity scan.
Brecht Van Lommel
brechtvanlommel at pandora.be
Wed Sep 4 00:39:21 CEST 2013
Revision: 59784
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=59784
Author: blendix
Date: 2013-09-03 22:39:21 +0000 (Tue, 03 Sep 2013)
Log Message:
-----------
Fix a few issues reported by coverity scan.
Modified Paths:
--------------
trunk/blender/intern/cycles/blender/blender_sync.cpp
trunk/blender/intern/cycles/kernel/osl/osl_services.cpp
trunk/blender/intern/cycles/kernel/osl/osl_shader.cpp
trunk/blender/intern/cycles/render/camera.cpp
trunk/blender/intern/cycles/render/mesh.cpp
trunk/blender/intern/cycles/render/nodes.cpp
trunk/blender/intern/cycles/render/object.cpp
trunk/blender/intern/cycles/render/scene.h
trunk/blender/intern/cycles/render/session.cpp
trunk/blender/intern/cycles/render/session.h
trunk/blender/intern/cycles/render/svm.cpp
trunk/blender/intern/cycles/render/tile.cpp
trunk/blender/intern/cycles/render/tile.h
trunk/blender/intern/cycles/util/util_task.cpp
trunk/blender/source/blender/editors/render/render_internal.c
trunk/blender/source/blender/render/intern/source/rendercore.c
Modified: trunk/blender/intern/cycles/blender/blender_sync.cpp
===================================================================
--- trunk/blender/intern/cycles/blender/blender_sync.cpp 2013-09-03 22:39:17 UTC (rev 59783)
+++ trunk/blender/intern/cycles/blender/blender_sync.cpp 2013-09-03 22:39:21 UTC (rev 59784)
@@ -458,7 +458,7 @@
params.tile_size = make_int2(tile_x, tile_y);
}
- params.tile_order = RNA_enum_get(&cscene, "tile_order");
+ params.tile_order = (TileOrder)RNA_enum_get(&cscene, "tile_order");
params.start_resolution = get_int(cscene, "preview_start_resolution");
Modified: trunk/blender/intern/cycles/kernel/osl/osl_services.cpp
===================================================================
--- trunk/blender/intern/cycles/kernel/osl/osl_services.cpp 2013-09-03 22:39:17 UTC (rev 59783)
+++ trunk/blender/intern/cycles/kernel/osl/osl_services.cpp 2013-09-03 22:39:21 UTC (rev 59784)
@@ -97,6 +97,7 @@
OSLRenderServices::OSLRenderServices()
{
kernel_globals = NULL;
+ osl_ts = NULL;
}
OSLRenderServices::~OSLRenderServices()
@@ -701,7 +702,7 @@
int object, prim, segment;
/* lookup of attribute on another object */
- if (object_name != u_empty || sd == NULL) {
+ if (object_name != u_empty) {
OSLGlobals::ObjectNameMap::iterator it = kg->osl->object_name_map.find(object_name);
if (it == kg->osl->object_name_map.end())
Modified: trunk/blender/intern/cycles/kernel/osl/osl_shader.cpp
===================================================================
--- trunk/blender/intern/cycles/kernel/osl/osl_shader.cpp 2013-09-03 22:39:17 UTC (rev 59783)
+++ trunk/blender/intern/cycles/kernel/osl/osl_shader.cpp 2013-09-03 22:39:21 UTC (rev 59784)
@@ -388,6 +388,8 @@
sc.sample_weight = sample_weight;
sc.type = CLOSURE_VOLUME_ID;
+ sc.data0 = 0.0f;
+ sc.data1 = 0.0f;
sc.prim = NULL;
/* add */
Modified: trunk/blender/intern/cycles/render/camera.cpp
===================================================================
--- trunk/blender/intern/cycles/render/camera.cpp 2013-09-03 22:39:17 UTC (rev 59783)
+++ trunk/blender/intern/cycles/render/camera.cpp 2013-09-03 22:39:21 UTC (rev 59784)
@@ -52,6 +52,7 @@
width = 1024;
height = 512;
+ resolution = 1;
viewplane.left = -((float)width/(float)height);
viewplane.right = (float)width/(float)height;
Modified: trunk/blender/intern/cycles/render/mesh.cpp
===================================================================
--- trunk/blender/intern/cycles/render/mesh.cpp 2013-09-03 22:39:17 UTC (rev 59783)
+++ trunk/blender/intern/cycles/render/mesh.cpp 2013-09-03 22:39:21 UTC (rev 59784)
@@ -39,6 +39,7 @@
Mesh::Mesh()
{
need_update = true;
+ need_update_rebuild = false;
transform_applied = false;
transform_negative_scaled = false;
transform_normal = transform_identity();
@@ -467,6 +468,7 @@
osl_attr.type = attr.type();
osl_attr.elem = ATTR_ELEMENT_VALUE;
osl_attr.value = attr;
+ osl_attr.offset = 0;
og->attribute_map[i*ATTR_PRIM_TYPES][attr.name()] = osl_attr;
og->attribute_map[i*ATTR_PRIM_TYPES + ATTR_PRIM_CURVE][attr.name()] = osl_attr;
Modified: trunk/blender/intern/cycles/render/nodes.cpp
===================================================================
--- trunk/blender/intern/cycles/render/nodes.cpp 2013-09-03 22:39:17 UTC (rev 59783)
+++ trunk/blender/intern/cycles/render/nodes.cpp 2013-09-03 22:39:21 UTC (rev 59784)
@@ -452,6 +452,13 @@
sunsky->config_z[3] = (-0.0441f * T - 1.6537f);
sunsky->config_z[4] = (-0.0109f * T + 0.0529f);
+ /* unused for old sky model */
+ for(int i = 5; i < 9; i++) {
+ sunsky->config_x[i] = 0.0f;
+ sunsky->config_y[i] = 0.0f;
+ sunsky->config_z[i] = 0.0f;
+ }
+
sunsky->radiance_x /= sky_perez_function(sunsky->config_x, 0, theta);
sunsky->radiance_y /= sky_perez_function(sunsky->config_y, 0, theta);
sunsky->radiance_z /= sky_perez_function(sunsky->config_z, 0, theta);
@@ -558,6 +565,7 @@
tex_mapping.compile(compiler);
SunSky sunsky;
+
if(type_enum[type] == NODE_SKY_OLD)
sky_texture_precompute_old(&sunsky, sun_direction, turbidity);
else if(type_enum[type] == NODE_SKY_NEW)
Modified: trunk/blender/intern/cycles/render/object.cpp
===================================================================
--- trunk/blender/intern/cycles/render/object.cpp 2013-09-03 22:39:17 UTC (rev 59783)
+++ trunk/blender/intern/cycles/render/object.cpp 2013-09-03 22:39:21 UTC (rev 59784)
@@ -41,10 +41,13 @@
particle_id = 0;
bounds = BoundBox::empty;
motion.pre = transform_identity();
+ motion.mid = transform_identity();
motion.post = transform_identity();
use_motion = false;
use_holdout = false;
curverender = false;
+ dupli_generated = make_float3(0.0f, 0.0f, 0.0f);
+ dupli_uv = make_float2(0.0f, 0.0f);
}
Object::~Object()
Modified: trunk/blender/intern/cycles/render/scene.h
===================================================================
--- trunk/blender/intern/cycles/render/scene.h 2013-09-03 22:39:17 UTC (rev 59783)
+++ trunk/blender/intern/cycles/render/scene.h 2013-09-03 22:39:21 UTC (rev 59784)
@@ -136,6 +136,7 @@
#else
use_qbvh = false;
#endif
+ persistent_data = false;
}
bool modified(const SceneParams& params)
Modified: trunk/blender/intern/cycles/render/session.cpp
===================================================================
--- trunk/blender/intern/cycles/render/session.cpp 2013-09-03 22:39:17 UTC (rev 59783)
+++ trunk/blender/intern/cycles/render/session.cpp 2013-09-03 22:39:21 UTC (rev 59784)
@@ -66,6 +66,7 @@
reset_time = 0.0;
preview_time = 0.0;
paused_time = 0.0;
+ last_update_time = 0.0;
delayed_reset.do_reset = false;
delayed_reset.samples = 0;
Modified: trunk/blender/intern/cycles/render/session.h
===================================================================
--- trunk/blender/intern/cycles/render/session.h 2013-09-03 22:39:17 UTC (rev 59783)
+++ trunk/blender/intern/cycles/render/session.h 2013-09-03 22:39:21 UTC (rev 59784)
@@ -49,7 +49,7 @@
bool experimental;
int samples;
int2 tile_size;
- int tile_order;
+ TileOrder tile_order;
int start_resolution;
int threads;
@@ -81,6 +81,7 @@
text_timeout = 1.0;
shadingsystem = SVM;
+ tile_order = TILE_CENTER;
}
bool modified(const SessionParams& params)
@@ -99,6 +100,7 @@
&& cancel_timeout == params.cancel_timeout
&& reset_timeout == params.reset_timeout
&& text_timeout == params.text_timeout
+ && tile_order == params.tile_order
&& shadingsystem == params.shadingsystem); }
};
Modified: trunk/blender/intern/cycles/render/svm.cpp
===================================================================
--- trunk/blender/intern/cycles/render/svm.cpp 2013-09-03 22:39:17 UTC (rev 59783)
+++ trunk/blender/intern/cycles/render/svm.cpp 2013-09-03 22:39:21 UTC (rev 59784)
@@ -110,6 +110,7 @@
max_stack_use = 0;
current_type = SHADER_TYPE_SURFACE;
current_shader = NULL;
+ current_graph = NULL;
background = false;
mix_weight_offset = SVM_STACK_INVALID;
use_multi_closure = use_multi_closure_;
Modified: trunk/blender/intern/cycles/render/tile.cpp
===================================================================
--- trunk/blender/intern/cycles/render/tile.cpp 2013-09-03 22:39:17 UTC (rev 59783)
+++ trunk/blender/intern/cycles/render/tile.cpp 2013-09-03 22:39:21 UTC (rev 59784)
@@ -22,7 +22,7 @@
CCL_NAMESPACE_BEGIN
TileManager::TileManager(bool progressive_, int num_samples_, int2 tile_size_, int start_resolution_,
- bool preserve_tile_device_, bool background_, int tile_order_, int num_devices_)
+ bool preserve_tile_device_, bool background_, TileOrder tile_order_, int num_devices_)
{
progressive = progressive_;
tile_size = tile_size_;
@@ -178,7 +178,7 @@
return state.tiles.end();
}
-list<Tile>::iterator TileManager::next_background_tile(int device, int tile_order)
+list<Tile>::iterator TileManager::next_background_tile(int device, TileOrder tile_order)
{
list<Tile>::iterator iter, best = state.tiles.end();
@@ -199,21 +199,21 @@
int64_t disty = cordy;
switch (tile_order) {
- case TileManager::CENTER:
+ case TILE_CENTER:
distx = centx - (cur_tile.x + cur_tile.w);
disty = centy - (cur_tile.y + cur_tile.h);
distx = (int64_t) sqrt((double)distx * distx + disty * disty);
break;
- case TileManager::RIGHT_TO_LEFT:
+ case TILE_RIGHT_TO_LEFT:
distx = cordx - cur_tile.x;
break;
- case TileManager::LEFT_TO_RIGHT:
+ case TILE_LEFT_TO_RIGHT:
distx = cordx + cur_tile.x;
break;
- case TileManager::TOP_TO_BOTTOM:
+ case TILE_TOP_TO_BOTTOM:
distx = cordx - cur_tile.y;
break;
- case TileManager::BOTTOM_TO_TOP:
+ case TILE_BOTTOM_TO_TOP:
distx = cordx + cur_tile.y;
break;
default:
Modified: trunk/blender/intern/cycles/render/tile.h
===================================================================
--- trunk/blender/intern/cycles/render/tile.h 2013-09-03 22:39:17 UTC (rev 59783)
+++ trunk/blender/intern/cycles/render/tile.h 2013-09-03 22:39:21 UTC (rev 59784)
@@ -40,6 +40,17 @@
: index(index_), x(x_), y(y_), w(w_), h(h_), device(device_), rendering(false) {}
};
+/* Tile order */
+
+/* Note: this should match enum_tile_order in properties.py */
+enum TileOrder {
+ TILE_CENTER = 0,
+ TILE_RIGHT_TO_LEFT = 1,
+ TILE_LEFT_TO_RIGHT = 2,
+ TILE_TOP_TO_BOTTOM = 3,
+ TILE_BOTTOM_TO_TOP = 4
+};
+
/* Tile Manager */
class TileManager {
@@ -59,7 +70,7 @@
int num_samples;
TileManager(bool progressive, int num_samples, int2 tile_size, int start_resolution,
- bool preserve_tile_device, bool background, int tile_order, int num_devices = 1);
+ bool preserve_tile_device, bool background, TileOrder tile_order, int num_devices = 1);
~TileManager();
void reset(BufferParams& params, int num_samples);
@@ -67,23 +78,15 @@
bool next();
bool next_tile(Tile& tile, int device = 0);
bool done();
+
+ void set_tile_order(TileOrder tile_order_) { tile_order = tile_order_; }
+protected:
- void set_tile_order(int tile_order_) { tile_order = tile_order_; }
-protected:
- /* Note: this should match enum_tile_order in properties.py */
- enum {
- CENTER = 0,
- RIGHT_TO_LEFT = 1,
- LEFT_TO_RIGHT = 2,
- TOP_TO_BOTTOM = 3,
- BOTTOM_TO_TOP = 4
- } TileOrder;
-
void set_tiles();
bool progressive;
int2 tile_size;
- int tile_order;
+ TileOrder tile_order;
int start_resolution;
int num_devices;
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list