0
0
forked from blender/blender
The official Blender project repository.
Go to file
Bastien Montagne 65c5721c5a Fix (unreported): MEM_new/MEM_freeN mistaches.
Calling `MEM_freeN` on data allocated with `MEM_new` is bad, since it
will not call a destructor matching the one invoked as part of
`MEM_new`.

While in practice cases fixed below were 'not a problem' currently, as
they are trivial Cpp types (and therefore their destructor is doing
nothing), `MEM_freeN` has no way to ensure it is dealing with such a
trivial data type, so allowing such mismatch is dirty and dangerous.

Note that almost all fixed cases look more like unintentional mistakes
(mis-usages of `MEM_new` instead of `MEM_cnew`).

NOTE: There is one more (known!) case in the asset code, which fix is
slightly less trivial, and will go through a separate PR.

NOTE: This is a by-product of some work to detect such invalid usages of
`MEM_freeN` on memory chunks allocated with `MEM_new`.

Pull Request: blender/blender#123691
2024-06-24 18:42:26 +02:00
.gitea Issue template: Add guidelines surrounding content restrictions 2024-05-31 17:22:07 +02:00
.github Fix: Switch to scheduled trigger for appropriate permission scope in workflow 2024-05-28 14:12:20 +02:00
build_files Merge branch 'blender-v4.2-release' 2024-06-21 18:04:55 +02:00
doc Merge branch 'blender-v4.2-release' 2024-06-14 15:48:27 +02:00
extern PyAPI Doc: fix doc gen warning wrt loadLeftHrtfSet 2024-06-13 21:22:25 +02:00
intern Merge branch 'blender-v4.2-release' 2024-06-24 12:57:08 +02:00
lib Windows: OIDN 2.3.0 2024-06-24 10:05:59 -06:00
locale I18N: Updated UI translations from git/weblate repo (5a0da5c5c520b306). 2024-06-24 11:30:24 +02:00
release UI: Removal of Cruft from SVG Icons Source Files 2024-06-21 12:18:24 -07:00
scripts GPv3: Sculpt Advanced panel is displayed empty 2024-06-24 13:54:54 +02:00
source Fix (unreported): MEM_new/MEM_freeN mistaches. 2024-06-24 18:42:26 +02:00
tests Nodes: File path socket subtype for string sockets 2024-06-24 16:28:33 +02:00
tools Merge branch 'blender-v4.2-release' 2024-06-23 13:02:13 +10:00
.clang-format Clang-Format: Ensure single new line at the end of files 2024-02-22 14:42:10 +01:00
.clang-tidy
.editorconfig
.git-blame-ignore-revs
.gitignore Switch SVN to Git submodules using Git-LFS 2024-02-22 13:50:55 +01:00
.gitmodules
AUTHORS AUTHORS: add 32 new authors 2024-06-18 12:09:43 +10:00
CMakeLists.txt Cycles: HIP support for AMD Strix APUs 2024-06-19 20:54:04 +02:00
COPYING
GNUmakefile Build: Use a different folder per architecture for "make deps" 2024-06-19 19:02:39 +02:00
make.bat Switch SVN to Git submodules using Git-LFS 2024-02-22 13:50:55 +01:00
pyproject.toml Extensions: Support online extensions and move add-ons outside Blender 2024-05-15 19:26:29 +02:00
README.md Docs: Replace most wiki links with links to new developer docs 2024-01-18 16:49:38 +01:00

Blender

Blender is the free and open source 3D creation suite. It supports the entirety of the 3D pipeline-modeling, rigging, animation, simulation, rendering, compositing, motion tracking and video editing.

Blender screenshot

Project Pages

Development

License

Blender as a whole is licensed under the GNU General Public License, Version 3. Individual files may have a different, but compatible license.

See blender.org/about/license for details.