Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/source
AgeCommit message (Collapse)Author
2022-04-19Version bump: 2.93.9-releasev2.93.9Philipp Oeser
2022-04-19Fix T85467: Mask transform center doesn't take parent Track into accountPhilipp Oeser
Coordinate checks in `spline_under_mouse_get` need to take place with the evaluated mask to get the right center. This is now more in line to how this is done in `ED_mask_point_find_nearest`. Note: similar issues are reported with box/circle/lasso selection in T97135, will tackle these separately though. Maniphest Tasks: T85467 Differential Revision: https://developer.blender.org/D14598
2022-04-19Fix T97135: Fix selection issues with parented masks in the MCEPhilipp Oeser
Box, Circle and Lasso select were not taking into account if a mask(point) was parented; selection was only succeeding in the original place. Now check coordinates from evaluated mask (points) instead while setting selection flags and DEG tagging still happens on the original ID. Maniphest Tasks: T97135 Differential Revision: https://developer.blender.org/D14651
2022-04-19Fix T85756: Adjust Last Operation panel is slow.Bastien Montagne
Extremely subttle bug that would only appear in some specific circumstances, would cause memfile undo writing code to falsely detect some ID as changed because it would get the wrong 'starting point' of comparison with existing previous memfile step. See T85756 for detailed explanation and reproducible case.
2022-04-19Correct error in 405bff7fd8ed5df8d44a1362763fac7c00e2060bCampbell Barton
Was adding 1 to dietime twice in init_particle_interpolation.
2022-04-19Fix T68290: Baked particles don't render in final frameCampbell Barton
Particles baked into memory would never load the final frame because of an off-by-one error calculating the particles `dietime`. This value indicates the frame which the particle ceases to exist but was being set to the end-frame which caused this bug as the scenes end-frame is inclusive. While the last frame was properly written and read from memory, the `dietime` was set to the last frame causing all the particles to be considered dead when calculating the cached particle system.
2022-04-19Fix T96790: Gpencil Inverted Fill makes extra stroke at originAntonio Vazquez
The problem was the stroke was created in the inverted loop before checking if the total of points is 0 and exit the loop. Also some code Cleanup.
2022-03-24Fix T96624: NLA crash when reordering tracks if no object is selected.Pratik Borhade
Caused by rBc0bd240ad0a1. To avoid crash, make boolean value false if active object data is NULL. Should be backported to 2.93 LTS and 3.1 corrective releases.
2022-03-24GPU: Allow the user to set an anisotropic filtering setting below the ↵Ethan-Hall
implementation-defined value of `GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT` Allow the user to set an anisotropic filtering setting below the implementation-defined value of `GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT`. This bug-fix is also needed for 2.93 LTS. Reviewed By: fclem Differential Revision: https://developer.blender.org/D14392
2022-03-24Fix T96243: Workbench Curvature not rendering in background.Jeroen Bakker
When rendering using the command line the curvature wasn't rendered. The reason was that the ui_scale wasn't initialized and therefore the same pixels where sampled to detect the curvature. This is fixed by setting the ui_scale to 1 for any image render.
2022-03-24Fix memory leak evaluating PyDriversCampbell Barton
Missed decref in 686ab4c9401a90b22fb17e46c992eb513fe4f693 caused every driver evaluation to create the BPy_StructRNA depsgraph without freeing the previously allocated depsgraph.
2022-03-24Fix T96195: f-curve factorized polynomial generator broken UIEthan-Hall
The polynomial parameters were not shown correctly. Differential Revision: https://developer.blender.org/D14254
2022-02-21Fix broken shapekeys: check for 'NULL' `from` pointer too.Bastien Montagne
Add check for `NULL` `from` pointer to `BLO_main_validate_shapekeys`, and delete these shapekeys, as they are fully invalid and impossible to recover. Found in a studio production file (`animation test/snow_parkour/shots/0040/0040.lighting.blend`, svn rev `1111`). Would be nice to know how this was generated too...
2022-02-21Fix T95787: Texture paint: Apply Camera Image crash for certain imagesPhilipp Oeser
This does not happen with **any** image, but with images that have ID properties. ID properties are used to store view projection matrices (e.g. for reprojection with `Image from View` or `Quick Edit` -- these are the ones we are interested in), but of course they can be used for anything else, too. The images in the file from the report have ID properties from an Addon for example. So the crash can reliably be reproduced with **any** image doing the following: ``` bpy.data.images['myImage']['myIDprop'] = "foo" ``` This would lead code in `texture_paint_camera_project_exec` to think the needed `view_data` is on the image (but in reality it was just some other IDprop). Solution is simple: just check `view_data` is really valid after getting it from the IDprops. Maniphest Tasks: T95787 Differential Revision: https://developer.blender.org/D14116
2022-02-21Fix T95601: Missing handling of keyingsets ID pointers in ↵Bastien Montagne
lib_query/foreach_id code Fix T95601: Missing handling of keyingsets ID pointers in lib_query/foreach_id code. This will have to be backported to 2.93 and possibly 2.83 if possible.
2022-02-21Fix T89542: Crash when loading certain .hdr filesJesse Yurkovich
The direct cause of the bug in question was passing in the raw memory buffer to sscanf. It should be called with a null-terminated buffer; which isn't guaranteed when blindly trusting the file data. When attempting to fuzz this code path, a variety of other crashes were discovered and fixed. Differential Revision: https://developer.blender.org/D11952
2022-02-21Fix dna_genfile error converting signed int types to floating pointCampbell Barton
Regression in 51befa4108128a7bacf7a201046cf7ede999833a caused negative values to overflow into a uint64_t. Resolve by casting to a signed int from originally signed types. This caused D14033 not to work properly.
2022-02-21Cleanup: use an intermediate value for cast_primitive_typeCampbell Barton
Assign the actual value before casting to large uint64_t/double types. This improves readability, especially in cases where both pointer and integer casts were used in one expression, to make matters worse clang-format treated these casts as a multiplication. This also made debugging/printing the values more of a hassle. No functional changes (GCC produced identical output).
2022-02-21Fix T95137: Spline calc_length not working with just 1 NURB pointJesse Yurkovich
The NURB case did not properly handle a curve with only 1 point. Ref D13904
2022-02-21Cleanup: Avoid possible NULL pointer errorAntonio Vazquez
In normal conditions, `gpf` always has a value, but better move inside the NULL checking.
2022-02-02Version bump: 2.93.9-rcPhilipp Oeser
2022-02-02Version bump: 2.93.8-releasev2.93.8Philipp Oeser
2022-02-02Fix T94197: Applying boolean with fast solver clears bevel weightsCampbell Barton
For boolean operations only one of the meshes was checked to determine if bevel weights should be created. Now initialize custom data from both meshes flag. Note that this is a localized fix to be back-ported, further changes will be made so edit-mode conversion accounts for this without the caller needing explicit checks for custom-data flags.
2022-01-17Fix T94837: curve tilt on a 2-point-curve is wrongPhilipp Oeser
2-point-curves are treated separately from 3plus-point-curves (assume a lot of the twisting reduction can be skipped, so there is a dedicated function for single segment curves). And while using the 3plus-point-curves function [`make_bevel_list_3D`] would actually work in this case, the dedicated function `make_bevel_list_segment_3D` would only consider the tilt of the second point and would just copy over the quat to the first point as well. Dont see a reason for this, now consider the first point's tilt as well. Maniphest Tasks: T94837 Differential Revision: https://developer.blender.org/D13813
2022-01-17Fix T94089: GPencil Drawing don't Update after paste in DopesheetAntonio Vazquez
When paste new frames, the datablock need to be tagged to update the drawings.
2022-01-17Fix T94903: GPencil: Copying keys doesn't preserve Keyframe TypeAntonio Vazquez
When a new frame is created, ensure the keytype of source key is used.
2022-01-17Fix crash caused by exception in Python gizmo target get handlerCampbell Barton
2022-01-17Fix T94799: GPencil Strokes drawn at 0.0 Strength still visibleAntonio Vazquez
There was a clamp with a value greater than 0.
2022-01-17Fix T94768: Crash in VSE prefetchingRichard Antalik
Only the fix part of rBf2fb9a0c59a applied (P2726).
2022-01-17Fix T91005: Autosplit produces unusable filesRichard Antalik
Audio PTS was reset for each new file. This caused misalignment of video and audio streams. In Blender, these files can't be loaded, other players will fail to align audio and video. Since timestamps are reset intentionally, reset also video stream timestamps. There were other bugs: After timestamp was reset for audio, write_audio_frames started encoding from timeline start until target frame, so each split video had more audio than it should. Also audio for last frame before splitting was written into new file. Differential Revision: https://developer.blender.org/D13280
2022-01-11Fix `PSYS_GLOBAL_HAIR` stripped even if connecting the hair failsAleksi Juvani
After disconnecting hair on an object, if you then hide the particle system, and try connecting the hair again, the operator is cancelled due to `remap_hair_emitter` returning `false` because `target_psmd->mesh_final` is NULL, but `connect_hair` will still strip the `PSYS_GLOBAL_HAIR` flag, which will cause the hair in the hidden particle system to be positioned incorrectly. The correct behavior is to strip the flag only if `remap_hair_emitter` succeeds. Differential Revision: https://developer.blender.org/D13703
2022-01-11Fix T94661: Out-of-bounds memory access due to malformed DDS image fileSergey Sharybin
Harden bounds check in the stream reader avoiding integer overflow.
2022-01-11Fix T86952: Buffer overflow reading specific DDS imagesSergey Sharybin
Add a data boundary check in the flipping code. This code now also communicates the number of mipmap levels it processed with an intent to avoid GPU texture from using more levels than there are in the DDS data. Differential Revision: https://developer.blender.org/D13755
2022-01-11Fix T94629: The IMB_flip API would fail with large imagesJesse Yurkovich
Fix IMB_flip[xy] to handle cases where integer overflow might occur when given sufficiently large image dimensions. All of these fixes were of a similar class where the intermediate sub-expression would overflow silently. Widen the types as necessary. Differential Revision: https://developer.blender.org/D13744
2022-01-11Fix: connecting hair fails on meshes with no generative modifiersAleksi Juvani
Fixes a bug introduced in rB5dedb39d447b. `mesh_original` is not set if the mesh has no generative modifiers, in which case we can use `mesh_final`, which would seem to be consistent with the rest of the particle code. An alternative approach would be to make sure that `mesh_original` is always set in `deformVerts`. Differential Revision: https://developer.blender.org/D13754
2022-01-11Fix T54488: hair disconnect/reconnect not working with modifiersAleksi Juvani
Take the Use Modifier Stack setting into account when connecting hair, and fix wrong results results when using deforming modifiers also. Differential Revision: https://developer.blender.org/D13704
2022-01-11Fix T94137: GPencil: Eraser does not erase first pointPhilipp Oeser
The eraser checks the current, previous and next point (and sets pc0, pc1 & pc2 corresponding to that for futher occlusion/brush/clipping checks). For the very first point, it sets pc0 to pc1 [which makes sense, there is no previous point, so we should assume the previous segment is "visible" as soon as the first point is], but does so *before* pc1 is even calculated. This makes following occlusion/brush/clipping checks work with zero values [which leads to no earsing in most cases]. Now *first* calculate pc1, *then* set pc0 to pc1. Maniphest Tasks: T94137 Differential Revision: https://developer.blender.org/D13593
2022-01-11Fix T94635: Sculpt Smooth in Surface mode with Anchored Stroke crashPhilipp Oeser
Sculpt Smooth in Surface mode (as opposed to Laplacian) needs a cache initialized on first time. In anchored stroke mode with spherical falloff this was skipped though (because this starts of with no PBVH nodes and an early return checks for this) and `first_time` was set to false before cache initialization. Now move the cache initalization to happen earlier (same as the cache initialization for automasking). Maniphest Tasks: T94635 Differential Revision: https://developer.blender.org/D13746
2022-01-11Fix T94685: python error adding Space handlers for SpreadsheetPhilipp Oeser
Oversight in {rB9cb5f0a2282a}. Above commit made an entry in `rna_Space_refine()`, but the entry in `rna_Space_refine_reverse()` was missing (and this is what python uses for the Space callbacks). Maniphest Tasks: T94685 Differential Revision: https://developer.blender.org/D13751
2022-01-11Fix T94564: Mirror clipping is not properly placed in sculpt modePhilipp Oeser
If a mirror object is used in a mirror modifier, sculptmode did not take this into account (and instead always clipped on the sculpt objects local axis). Now take this into account by storing a matrix in the preparation function `sculpt_init_mirror_clipping` and use that later in `SCULPT_clip`. Maniphest Tasks: T94564 Differential Revision: https://developer.blender.org/D13711
2022-01-11Fix T94366: Grease Pencil Automerge no immediate UI updatePhilipp Oeser
Just an oversight in rBe9607f45d85d. Now add notifier that toolsettings changed. Maniphest Tasks: T94366 Differential Revision: https://developer.blender.org/D13723
2022-01-11Fix T94544: crash removing image used as camera background via pythonPhilipp Oeser
Since 2.8, background images are tied to cameras (in 2.79 these were tied to a View3D I think). Code in `BKE_library_id_can_use_idtype` wasnt taking this relation between `Camera` and `Image` into account, thus leading to ID deletion/ unlinking not working properly -- in particular `libblock_remap_data` not doing its thing (and leaving the camera as a user of the image), then things went downhill from there... Now make the "Camera-can-use-an-Image" relation clear in `BKE_library_id_can_use_idtype`. Maniphest Tasks: T94544 Differential Revision: https://developer.blender.org/D13722
2022-01-11Fix T94262: Grease Pencil Blur Effect DoF mode wrongPhilipp Oeser
This was visible outside of camera view and was not respecting the "Depth of Field" checkbox on the Camera properties. Now return early if DoF should not be visible. Maniphest Tasks: T94262 Differential Revision: https://developer.blender.org/D13631
2022-01-11Fix T94422: Shading/Normals break on array modifier capsPhilipp Oeser
The array modifier does not necessarily tag normals dirty. If it doesnt, normals are recalculated "internally" using the offset ob transform. This was happening for the array items, but not for the caps. Now do the same thing for caps. Maniphest Tasks: T94422 Differential Revision: https://developer.blender.org/D13681
2022-01-11Fix T91012: Scene strip doesn't play audioRichard Antalik
Issue was caused by adding `seq->sound` check in ded68fb10275 in function `BKE_sound_scene_add_scene_sound` as `offset_time` field was introduced to resolve sub-frame a/v misalignment. Scene strips don't have `bSound` allocated but also don't suffer from a/v misalignment. Remove `seq->sound` check and don't apply any offset for scene strips. Reviewed By: zeddb, sergey Differential Revision: https://developer.blender.org/D12819
2022-01-11Fix T94109: 3d cursor crash when using shortcutGermano Cavalcante
Operator was erroneously starting edge_slide operation. Revert part of the changes in rB3fab16fe8eb4 as obedit_type was being confused with object_mode.
2021-12-15Version bump: 2.93.8-rcPhilipp Oeser
2021-12-14Version bump: 2.93.7-releasev2.93.7Philipp Oeser
2021-12-14LineArt: Shifting fix for different camera fitting.YimingWu
FOV was expanded to cover the shifting range, rather than to precisely cut at the image border. Now fixed. Reviewed By: Sebastian Parborg (zeddb) Differential Revision: https://developer.blender.org/D11523
2021-12-08Fix T91680: viewport selection broken in macOS x86 build with Xcode 13Brecht Van Lommel
There is an apparent compiler bug here, tweak the code to avoid it. This did not affect official builds as we were still using Xcode 12.