diff options
author | Dalai Felinto <dfelinto@gmail.com> | 2017-11-13 16:48:48 +0300 |
---|---|---|
committer | Dalai Felinto <dfelinto@gmail.com> | 2017-11-13 16:48:48 +0300 |
commit | 1cb6cea71c10c0d22ba9cdd3eee5111d0734c193 (patch) | |
tree | 1cbd74c668006be134692e883ceef7286db3a368 /intern | |
parent | f30a2a786214c4ef08612486c227add0bb6bf35b (diff) | |
parent | 8a03e4d409ec71beab612facf432eb57f3bc5f34 (diff) |
Merge remote-tracking branch 'origin/master' into blender2.8
Diffstat (limited to 'intern')
-rw-r--r-- | intern/cycles/CMakeLists.txt | 4 | ||||
-rw-r--r-- | intern/cycles/app/cycles_xml.cpp | 2 | ||||
-rw-r--r-- | intern/cycles/device/device_cuda.cpp | 6 | ||||
-rw-r--r-- | intern/cycles/device/device_split_kernel.cpp | 1 | ||||
-rw-r--r-- | intern/cycles/render/image.cpp | 6 | ||||
-rw-r--r-- | intern/cycles/util/util_xml.h | 15 |
6 files changed, 27 insertions, 7 deletions
diff --git a/intern/cycles/CMakeLists.txt b/intern/cycles/CMakeLists.txt index 5844c2480d6..dbf1bcece16 100644 --- a/intern/cycles/CMakeLists.txt +++ b/intern/cycles/CMakeLists.txt @@ -209,6 +209,10 @@ if(WITH_CYCLES_DEBUG) add_definitions(-DWITH_CYCLES_DEBUG) endif() +if(NOT OPENIMAGEIO_PUGIXML_FOUND) + add_definitions(-DWITH_SYSTEM_PUGIXML) +endif() + include_directories( SYSTEM ${BOOST_INCLUDE_DIR} diff --git a/intern/cycles/app/cycles_xml.cpp b/intern/cycles/app/cycles_xml.cpp index 3a1c7205c34..f2db9271a89 100644 --- a/intern/cycles/app/cycles_xml.cpp +++ b/intern/cycles/app/cycles_xml.cpp @@ -358,7 +358,7 @@ static void xml_read_shader(XMLReadState& state, xml_node node) /* Background */ -static void xml_read_background(XMLReadState& state, pugi::xml_node node) +static void xml_read_background(XMLReadState& state, xml_node node) { /* Background Settings */ xml_read_node(state, state.scene->background, node); diff --git a/intern/cycles/device/device_cuda.cpp b/intern/cycles/device/device_cuda.cpp index e602cba00b8..35b451c7a9c 100644 --- a/intern/cycles/device/device_cuda.cpp +++ b/intern/cycles/device/device_cuda.cpp @@ -908,7 +908,7 @@ public: cmem->texobject = 0; cmem->array = array_3d; } - else if(mem.data_height > 1) { + else if(mem.data_height > 0) { /* 2D texture, using pitch aligned linear memory. */ int alignment = 0; cuda_assert(cuDeviceGetAttribute(&alignment, CU_DEVICE_ATTRIBUTE_TEXTURE_PITCH_ALIGNMENT, cuDevice)); @@ -962,7 +962,7 @@ public: resDesc.res.array.hArray = array_3d; resDesc.flags = 0; } - else if(mem.data_height > 1) { + else if(mem.data_height > 0) { resDesc.resType = CU_RESOURCE_TYPE_PITCH2D; resDesc.res.pitch2D.devPtr = mem.device_pointer; resDesc.res.pitch2D.format = format; @@ -1012,7 +1012,7 @@ public: if(array_3d) { cuda_assert(cuTexRefSetArray(texref, array_3d, CU_TRSA_OVERRIDE_FORMAT)); } - else if(mem.data_height > 1) { + else if(mem.data_height > 0) { CUDA_ARRAY_DESCRIPTOR array_desc; array_desc.Format = format; array_desc.Height = mem.data_height; diff --git a/intern/cycles/device/device_split_kernel.cpp b/intern/cycles/device/device_split_kernel.cpp index 566d4020b33..74135a1f3c8 100644 --- a/intern/cycles/device/device_split_kernel.cpp +++ b/intern/cycles/device/device_split_kernel.cpp @@ -91,6 +91,7 @@ bool DeviceSplitKernel::load_kernels(const DeviceRequestedFeatures& requested_fe #define LOAD_KERNEL(name) \ kernel_##name = get_split_kernel_function(#name, requested_features); \ if(!kernel_##name) { \ + device->set_error(string("Split kernel error: failed to load kernel_") + #name); \ return false; \ } diff --git a/intern/cycles/render/image.cpp b/intern/cycles/render/image.cpp index 9358b40a689..482442cce29 100644 --- a/intern/cycles/render/image.cpp +++ b/intern/cycles/render/image.cpp @@ -723,6 +723,7 @@ void ImageManager::device_load_image(Device *device, *tex_img)) { /* on failure to load, we set a 1x1 pixels pink image */ + thread_scoped_lock device_lock(device_mutex); float *pixels = (float*)tex_img->alloc(1, 1); pixels[0] = TEX_IMAGE_MISSING_R; @@ -748,6 +749,7 @@ void ImageManager::device_load_image(Device *device, *tex_img)) { /* on failure to load, we set a 1x1 pixels pink image */ + thread_scoped_lock device_lock(device_mutex); float *pixels = (float*)tex_img->alloc(1, 1); pixels[0] = TEX_IMAGE_MISSING_R; @@ -770,6 +772,7 @@ void ImageManager::device_load_image(Device *device, *tex_img)) { /* on failure to load, we set a 1x1 pixels pink image */ + thread_scoped_lock device_lock(device_mutex); uchar *pixels = (uchar*)tex_img->alloc(1, 1); pixels[0] = (TEX_IMAGE_MISSING_R * 255); @@ -794,6 +797,7 @@ void ImageManager::device_load_image(Device *device, texture_limit, *tex_img)) { /* on failure to load, we set a 1x1 pixels pink image */ + thread_scoped_lock device_lock(device_mutex); uchar *pixels = (uchar*)tex_img->alloc(1, 1); pixels[0] = (TEX_IMAGE_MISSING_R * 255); @@ -815,6 +819,7 @@ void ImageManager::device_load_image(Device *device, texture_limit, *tex_img)) { /* on failure to load, we set a 1x1 pixels pink image */ + thread_scoped_lock device_lock(device_mutex); half *pixels = (half*)tex_img->alloc(1, 1); pixels[0] = TEX_IMAGE_MISSING_R; @@ -839,6 +844,7 @@ void ImageManager::device_load_image(Device *device, texture_limit, *tex_img)) { /* on failure to load, we set a 1x1 pixels pink image */ + thread_scoped_lock device_lock(device_mutex); half *pixels = (half*)tex_img->alloc(1, 1); pixels[0] = TEX_IMAGE_MISSING_R; diff --git a/intern/cycles/util/util_xml.h b/intern/cycles/util/util_xml.h index e1a28df9433..6f06f17937b 100644 --- a/intern/cycles/util/util_xml.h +++ b/intern/cycles/util/util_xml.h @@ -23,10 +23,19 @@ CCL_NAMESPACE_BEGIN -using OIIO_NAMESPACE::pugi::xml_node; -using OIIO_NAMESPACE::pugi::xml_attribute; +OIIO_NAMESPACE_USING + +#ifdef WITH_SYSTEM_PUGIXML +# define PUGIXML_NAMESPACE pugi +#else +# define PUGIXML_NAMESPACE OIIO_NAMESPACE::pugi +#endif + +using PUGIXML_NAMESPACE::xml_attribute; +using PUGIXML_NAMESPACE::xml_document; +using PUGIXML_NAMESPACE::xml_node; +using PUGIXML_NAMESPACE::xml_parse_result; CCL_NAMESPACE_END #endif /* __UTIL_XML_H__ */ - |