Merge branch 'blender-v2.83-release'

This commit is contained in:
Brecht Van Lommel 2020-05-01 23:55:13 +02:00
commit 83304e4c22
Notes: blender-bot 2023-02-14 10:32:59 +01:00
Referenced by issue #78506, Crash loading .blend file with packed file
5 changed files with 57 additions and 8 deletions

View File

@ -108,7 +108,7 @@ void BlenderSync::sync_recalc(BL::Depsgraph &b_depsgraph, BL::SpaceView3D &b_v3d
}
if (dicing_prop_changed) {
for (const pair<GeometryKey, Geometry *> &iter : geometry_map.key_to_scene_data()) {
for (const pair<const GeometryKey, Geometry *> &iter : geometry_map.key_to_scene_data()) {
Geometry *geom = iter.second;
if (geom->type == Geometry::MESH) {
Mesh *mesh = static_cast<Mesh *>(geom);

View File

@ -19,6 +19,7 @@
#include "render/scene.h"
#include "util/util_foreach.h"
#include "util/util_hash.h"
#include "util/util_logging.h"
#include "util/util_progress.h"
#include "util/util_types.h"
@ -447,7 +448,14 @@ void GeometryManager::create_volume_mesh(Mesh *mesh, Progress &progress)
start_point = transform_point(&itfm, start_point);
cell_size = transform_direction(&itfm, cell_size);
volume_params.start_point = start_point;
/* Slightly offset vertex coordinates to avoid overlapping faces with other
* volumes or meshes. The proper solution would be to improve intersection in
* the kernel to support robust handling of multiple overlapping faces or use
* an all-hit intersection similar to shadows. */
const float3 face_overlap_avoidance = cell_size * 0.1f *
hash_uint_to_float(hash_string(mesh->name.c_str()));
volume_params.start_point = start_point + face_overlap_avoidance;
volume_params.cell_size = cell_size;
volume_params.pad_size = pad_size;

View File

@ -35,6 +35,8 @@
# include "GHOST_ImeWin32.h"
#endif
#include <vector>
#include <wintab.h>
#define PACKETDATA (PK_BUTTONS | PK_NORMAL_PRESSURE | PK_ORIENTATION | PK_CURSOR)
#define PACKETMODE PK_BUTTONS

View File

@ -86,6 +86,12 @@ static void cmp_node_image_add_pass_output(bNodeTree *ntree,
{
bNodeSocket *sock = BLI_findstring(&node->outputs, name, offsetof(bNodeSocket, name));
/* Replace if types don't match. */
if (sock && sock->type != type) {
nodeRemoveSocket(ntree, node, sock);
sock = NULL;
}
/* Create socket if it doesn't exist yet. */
if (sock == NULL) {
if (rres_index >= 0) {

View File

@ -18,14 +18,12 @@ local:
*cineon*;
*COLLADA*;
cu*;
decodeInstruction;
*default_error_condition*;
*dpx*;
*embree*;
ff_*;
fftw*;
FLAC*;
ForceStackAlign;
FT_*;
*GeneratedSaxParser*;
*google*;
@ -40,14 +38,11 @@ local:
jack_*;
jpeg_*;
jsimd**;
_Jv_RegisterClasses;
lame_*;
*llvm*;
*LLVM*;
*MathML*;
*mkldnn*;
Name;
NumNamedVarArgParams;
oc_*;
ogg*;
*oidn*;
@ -72,8 +67,46 @@ local:
vp9*;
vpx*;
x264_*;
X86CompilationCallback*;
xml*;
xvid*;
*YAML*;
/* LLVM symbols not in the LLVM namespace that can conflict with LLVM usage
* in OpenGL and OpenCL drivers. */
decodeInstruction;
EnableHotColdSplit;
EnableIPRA;
EnableOrderFileInstrumentation;
EnableVPlanNativePath;
EnableVPlanPredication;
FlattenedProfileUsed;
ForceStackAlign;
ForceSummaryEdgesCold;
FSEC;
__jit_debug_descriptor;
__jit_debug_register_code;
_Jv_RegisterClasses;
MachineRegionInfoPassID;
MemOPSizeLarge;
MemOPSizeRange;
MISchedPostRA;
ModuleSummaryDotFile;
__morestack;
Name;
NumNamedVarArgParams;
PGOViewCounts;
PrintBlockFreqFuncName;
PrintBranchProbFuncName;
ProfileLikelyProb;
StartAfterOptName;
StartBeforeOptName;
StaticLikelyProb;
StopAfterOptName;
StopBeforeOptName;
UseDbgAddr;
ViewBlockFreqFuncName;
ViewBlockLayoutWithBFI;
ViewHotFreqPercent;
WriteRelBFToSummary;
X86CompilationCallback*;
};