Merge branch 'blender-v4.3-release'
This commit is contained in:
@@ -36,7 +36,11 @@ ExternalProject_Add(external_tbb
|
||||
|
||||
${PATCH_CMD} -p 1 -d
|
||||
${BUILD_DIR}/tbb/src/external_tbb <
|
||||
${PATCH_DIR}/tbb.diff
|
||||
${PATCH_DIR}/tbb.diff &&
|
||||
|
||||
${PATCH_CMD} -p 1 -d
|
||||
${BUILD_DIR}/tbb/src/external_tbb <
|
||||
${PATCH_DIR}/tbb_1478.diff
|
||||
|
||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${LIBDIR}/tbb ${DEFAULT_CMAKE_FLAGS} ${TBB_EXTRA_ARGS}
|
||||
INSTALL_DIR ${LIBDIR}/tbb
|
||||
|
||||
19
build_files/build_environment/patches/tbb_1478.diff
Normal file
19
build_files/build_environment/patches/tbb_1478.diff
Normal file
@@ -0,0 +1,19 @@
|
||||
diff -Naur orig/src/tbbmalloc/proxy.cpp external_tbb/src/tbbmalloc/proxy.cpp
|
||||
--- orig/src/tbbmalloc/proxy.cpp 2024-10-08 14:43:58 -0600
|
||||
+++ external_tbb/src/tbbmalloc/proxy.cpp 2024-10-08 14:48:26 -0600
|
||||
@@ -452,14 +452,12 @@
|
||||
const char* known_bytecodes[] = {
|
||||
#if _WIN64
|
||||
// "========================================================" - 56 symbols
|
||||
+ "E9********CCCC", // multiple - jmp(0xE9) with address followed by empty space (0xCC - INT 3)
|
||||
"4883EC284885C974", // release free()
|
||||
"4883EC284885C975", // release _msize()
|
||||
"4885C974375348", // release free() 8.0.50727.42, 10.0
|
||||
- "E907000000CCCC", // release _aligned_msize(), _aligned_free() ucrtbase.dll
|
||||
"C7442410000000008B", // release free() ucrtbase.dll 10.0.14393.33
|
||||
- "E90B000000CCCC", // release _msize() ucrtbase.dll 10.0.14393.33
|
||||
"48895C24085748", // release _aligned_msize() ucrtbase.dll 10.0.14393.33
|
||||
- "E903000000CCCC", // release _aligned_msize() ucrtbase.dll 10.0.16299.522
|
||||
"48894C24084883EC28BA", // debug prologue
|
||||
"4C894424184889542410", // debug _aligned_msize() 10.0
|
||||
"48894C24084883EC2848", // debug _aligned_free 10.0
|
||||
@@ -53,6 +53,8 @@ struct SnapObjectParams {
|
||||
eSnapTargetOP snap_target_select;
|
||||
/** Geometry for snapping in edit mode. */
|
||||
eSnapEditType edit_mode_type;
|
||||
/** Grid unit size. "0.0" is automatic. */
|
||||
float grid_size;
|
||||
/** Break nearest face snapping into steps to improve transformations across U-shaped targets. */
|
||||
short face_nearest_steps;
|
||||
/** Snap to the closest element, use when using more than one snap type. */
|
||||
|
||||
@@ -1289,7 +1289,10 @@ int transformEvent(TransInfo *t, wmOperator *op, const wmEvent *event)
|
||||
}
|
||||
else if (event->prev_val == KM_PRESS) {
|
||||
t->modifiers |= MOD_PRECISION;
|
||||
t->mouse.precision = true;
|
||||
/* Mouse position during Snap to Grid is not affected by precision. */
|
||||
if (!(validSnap(t) && t->tsnap.target_type == SCE_SNAP_TO_GRID)) {
|
||||
t->mouse.precision = true;
|
||||
}
|
||||
|
||||
t->redraw |= TREDRAW_HARD;
|
||||
}
|
||||
|
||||
@@ -1570,6 +1570,7 @@ static eSnapMode snapObjectsTransform(
|
||||
{
|
||||
SnapObjectParams snap_object_params{};
|
||||
snap_object_params.snap_target_select = t->tsnap.target_operation;
|
||||
snap_object_params.grid_size = (t->modifiers & MOD_PRECISION) ? t->snap[1] : t->snap[0];
|
||||
snap_object_params.edit_mode_type = (t->flag & T_EDIT) != 0 ? SNAP_GEOM_EDIT : SNAP_GEOM_FINAL;
|
||||
snap_object_params.use_occlusion_test = true;
|
||||
snap_object_params.use_backface_culling = (t->tsnap.flag & SCE_SNAP_BACKFACE_CULLING) != 0;
|
||||
|
||||
@@ -1130,10 +1130,15 @@ static bool snap_object_context_runtime_init(SnapObjectContext *sctx,
|
||||
|
||||
if (sctx->runtime.snap_to_flag & SCE_SNAP_TO_GRID) {
|
||||
sctx->grid.use_init_co = init_co != nullptr;
|
||||
if (params->grid_size) {
|
||||
sctx->grid.size = params->grid_size;
|
||||
}
|
||||
if (!compare_m4m4(sctx->grid.persmat.ptr(), rv3d->persmat, FLT_EPSILON)) {
|
||||
sctx->grid.persmat = float4x4(rv3d->persmat);
|
||||
sctx->grid.size = ED_view3d_grid_view_scale(
|
||||
sctx->scene, sctx->runtime.v3d, region, nullptr);
|
||||
if (params->grid_size == 0.0f) {
|
||||
sctx->grid.size = ED_view3d_grid_view_scale(
|
||||
sctx->scene, sctx->runtime.v3d, region, nullptr);
|
||||
}
|
||||
|
||||
if (!sctx->grid.use_init_co) {
|
||||
memset(sctx->grid.planes, 0, sizeof(sctx->grid.planes));
|
||||
|
||||
Reference in New Issue
Block a user