Python command gives indecipherable error (bpy.ops.sound.mixdown) #99039

Closed
opened 2022-06-21 07:18:04 +02:00 by RealName · 10 comments

Operating system: W10

Blender Version
3.2, 3.1, 2.93 and maybe older

Short description of error

The Python code to create a 'mixdown' doesn't seem to work. Also, the Error message it returns is indecipherable.

The code I put into the Python text editor is:

  import bpy
  bpy.ops.sound.mixdown(
      filepath = r'C:\Users\R-PC\Desktop\Render\Render\AudioTest'
      )

The error it gives is Error: @₧.¬.☻ on 2.93, Error: @_óêM☻ on 3.1 and it is different again on 3.1. The error does come from the 'mixdown' op.

I have tried other variations of the ops.sound.mixdown() command but I can't get it to work and the error message doesn't give any guidance. If it had given a normal error message I'd just assume I'm using it wrong, but I haven't seen an error message like this before so decided to report it as a potential bug.

bug report.png

Operating system: W10 **Blender Version** 3.2, 3.1, 2.93 and maybe older **Short description of error** The Python code to create a 'mixdown' doesn't seem to work. Also, the Error message it returns is indecipherable. The code I put into the Python text editor is: ``` import bpy ``` ``` bpy.ops.sound.mixdown( filepath = r'C:\Users\R-PC\Desktop\Render\Render\AudioTest' ) ``` The error it gives is `Error: @₧.¬.☻` on 2.93, `Error: @_óêM☻` on 3.1 and it is different again on 3.1. The error does come from the 'mixdown' op. I have tried other variations of the `ops.sound.mixdown()` command but I can't get it to work and the error message doesn't give any guidance. If it had given a normal error message I'd just assume I'm using it wrong, but I haven't seen an error message like this before so decided to report it as a potential bug. ![bug report.png](https://archive.blender.org/developer/F13210453/bug_report.png)
Author

Added subscriber: @Nickname6498156

Added subscriber: @Nickname6498156

Added subscriber: @rjg

Added subscriber: @rjg

Changed status from 'Needs Triage' to: 'Confirmed'

Changed status from 'Needs Triage' to: 'Confirmed'

This is a use-after-free. I will add an ASAN trace, once the build based on the current master is done.

This is a use-after-free. I will add an ASAN trace, once the build based on the current master is done.
==68876==ERROR: AddressSanitizer: heap-use-after-free on address 0x607000885d38 at pc 0x0000074e0ce3 bp 0x7fffffffaf60 sp 0x7fffffffaf50
READ of size 1 at 0x607000885d38 thread T0
    - 0 0x74e0ce2 in BLT_pgettext /home/dev/01-data/01-git/blender-git/blender/source/blender/blentranslation/intern/blt_translation.c:43
    - 1 0x74e1009 in BLT_translate_do_tooltip /home/dev/01-data/01-git/blender-git/blender/source/blender/blentranslation/intern/blt_translation.c:135
    - 2 0x4ab7fb4 in BKE_report /home/dev/01-data/01-git/blender-git/blender/source/blender/blenkernel/intern/report.c:87
    - 3 0xc921ffb in sound_mixdown_exec /home/dev/01-data/01-git/blender-git/blender/source/blender/editors/sound/sound_ops.c:394
    - 4 0x718c316 in wm_operator_invoke /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:1403
    - 5 0x718de67 in wm_operator_call_internal /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:1630
    - 6 0x718e5cc in WM_operator_call_py /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:1708
    - 7 0x97e0b0f in pyop_call /home/dev/01-data/01-git/blender-git/blender/source/blender/python/intern/bpy_operator.c:303
    - 8 0x21215e83 in cfunction_call Objects/methodobject.c:552
    - 9 0x211d02e7 in _PyObject_MakeTpCall Objects/call.c:215
    - 10 0x421be3a in _PyObject_VectorcallTstate Include/cpython/abstract.h:112
    - 11 0x421be3a in _PyObject_VectorcallTstate Include/cpython/abstract.h:99
    - 12 0x421be3a in PyObject_Vectorcall Include/cpython/abstract.h:123
    - 13 0x421be3a in call_function Python/ceval.c:5867
    - 14 0x421be3a in _PyEval_EvalFrameDefault Python/ceval.c:4213
    - 15 0x2128e973 in _PyEval_EvalFrame Include/internal/pycore_ceval.h:46
    - 16 0x2128e973 in _PyEval_Vector Python/ceval.c:5065
    - 17 0x211d04c9 in _PyObject_FastCallDictTstate Objects/call.c:153
    - 18 0x211d0713 in _PyObject_Call_Prepend Objects/call.c:431
    - 19 0x2123a578 in slot_tp_call Objects/typeobject.c:7486
    - 20 0x211d02e7 in _PyObject_MakeTpCall Objects/call.c:215
    - 21 0x421bccd in _PyObject_VectorcallTstate Include/cpython/abstract.h:112
    - 22 0x421bccd in _PyObject_VectorcallTstate Include/cpython/abstract.h:99
    - 23 0x421bccd in PyObject_Vectorcall Include/cpython/abstract.h:123
    - 24 0x421bccd in call_function Python/ceval.c:5867
    - 25 0x421bccd in _PyEval_EvalFrameDefault Python/ceval.c:4231
    - 26 0x2128e7fb in _PyEval_EvalFrame Include/internal/pycore_ceval.h:46
    - 27 0x2128e7fb in _PyEval_Vector Python/ceval.c:5065
    - 28 0x2128e7fb in PyEval_EvalCode Python/ceval.c:1134
    - 29 0x9757d29 in python_script_exec /home/dev/01-data/01-git/blender-git/blender/source/blender/python/intern/bpy_interface_run.c:137
    - 30 0x9758228 in BPY_run_text /home/dev/01-data/01-git/blender-git/blender/source/blender/python/intern/bpy_interface_run.c:234
    - 31 0xd8413f6 in text_run_script /home/dev/01-data/01-git/blender-git/blender/source/blender/editors/space_text/text_ops.c:775
    - 32 0xd8415fe in text_run_script_exec /home/dev/01-data/01-git/blender-git/blender/source/blender/editors/space_text/text_ops.c:812
    - 33 0x718c316 in wm_operator_invoke /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:1403
    - 34 0x718dd01 in wm_operator_call_internal /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:1596
    - 35 0x718df61 in WM_operator_name_call_ptr /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:1644
    - 36 0x718f433 in WM_operator_name_call_ptr_with_depends_on_cursor /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:1837
    - 37 0xcc90da4 in ui_apply_but_funcs_after /home/dev/01-data/01-git/blender-git/blender/source/blender/editors/interface/interface_handlers.c:1018
    - 38 0xcd1e915 in ui_handler_region_menu /home/dev/01-data/01-git/blender-git/blender/source/blender/editors/interface/interface_handlers.c:11487
    - 39 0x71850a5 in wm_handler_ui_call /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:732
    - 40 0x719d98f in wm_handlers_do_intern /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:3166
    - 41 0x719e9d0 in wm_handlers_do /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:3285
    - 42 0x71a7641 in wm_event_do_handlers /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:3878
    - 43 0x71655c9 in WM_main /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm.c:623
    - 44 0x421d059 in main /home/dev/01-data/01-git/blender-git/blender/source/creator/creator.c:547
    - 45 0x7ffff6e46082 in __libc_start_main ../csu/libc-start.c:308
    #46 0x421c20d in _start (/home/dev/01-data/01-git/blender-git/build_linux_debug_full/bin/blender+0x421c20d)

0x607000885d38 is located 24 bytes inside of 80-byte region [0x607000885d20,0x607000885d70)
freed by thread T0 here:
    - 0 0x7ffff769351f in operator delete(void*) ../../../../src/libsanitizer/asan/asan_new_delete.cc:165
    - 1 0x213fc451 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (/home/dev/01-data/01-git/blender-git/build_linux_debug_full/bin/blender+0x213fc451)
    - 2 0x1f219946 in aud::FileException::~FileException() /home/dev/01-data/01-git/blender-git/blender/extern/audaspace/src/Exception.cpp:78
    - 3 0x213d6be2 in __gxx_exception_cleanup(_Unwind_Reason_Code, _Unwind_Exception*) (/home/dev/01-data/01-git/blender-git/build_linux_debug_full/bin/blender+0x213d6be2)

previously allocated by thread T0 here:
    - 0 0x7ffff7692587 in operator new(unsigned long) ../../../../src/libsanitizer/asan/asan_new_delete.cc:104
    - 1 0x213fc1d8 in std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) (/home/dev/01-data/01-git/blender-git/build_linux_debug_full/bin/blender+0x213fc1d8)
    #2 0x213fdfe4 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (/home/dev/01-data/01-git/blender-git/build_linux_debug_full/bin/blender+0x213fdfe4)

SUMMARY: AddressSanitizer: heap-use-after-free /home/dev/01-data/01-git/blender-git/blender/source/blender/blentranslation/intern/blt_translation.c:43 in BLT_pgettext
Shadow bytes around the buggy address:
  0x0c0e80108b50: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
  0x0c0e80108b60: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
  0x0c0e80108b70: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
  0x0c0e80108b80: fa fa fa fa fa fa fa fa fd fd fd fd fd fd fd fd
  0x0c0e80108b90: fd fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
=>0x0c0e80108ba0: fa fa fa fa fd fd fd[fd]fd fd fd fd fd fd fa fa
  0x0c0e80108bb0: fa fa fd fd fd fd fd fd fd fd fd fa fa fa fa fa
  0x0c0e80108bc0: fd fd fd fd fd fd fd fd fd fa fa fa fa fa fd fd
  0x0c0e80108bd0: fd fd fd fd fd fd fd fd fa fa fa fa fd fd fd fd
  0x0c0e80108be0: fd fd fd fd fd fd fa fa fa fa fd fd fd fd fd fd
  0x0c0e80108bf0: fd fd fd fd fa fa fa fa fd fd fd fd fd fd fd fd
Shadow byte legend (one shadow byte represents 8 application bytes):
  Addressable:           00
  Partially addressable: 01 02 03 04 05 06 07 
  Heap left redzone:       fa
  Freed heap region:       fd
  Stack left redzone:      f1
  Stack mid redzone:       f2
  Stack right redzone:     f3
  Stack after return:      f5
  Stack use after scope:   f8
  Global redzone:          f9
  Global init order:       f6
  Poisoned by user:        f7
  Container overflow:      fc
  Array cookie:            ac
  Intra object redzone:    bb
  ASan internal:           fe
  Left alloca redzone:     ca
  Right alloca redzone:    cb
  Shadow gap:              cc
```lines=10 ==68876==ERROR: AddressSanitizer: heap-use-after-free on address 0x607000885d38 at pc 0x0000074e0ce3 bp 0x7fffffffaf60 sp 0x7fffffffaf50 READ of size 1 at 0x607000885d38 thread T0 - 0 0x74e0ce2 in BLT_pgettext /home/dev/01-data/01-git/blender-git/blender/source/blender/blentranslation/intern/blt_translation.c:43 - 1 0x74e1009 in BLT_translate_do_tooltip /home/dev/01-data/01-git/blender-git/blender/source/blender/blentranslation/intern/blt_translation.c:135 - 2 0x4ab7fb4 in BKE_report /home/dev/01-data/01-git/blender-git/blender/source/blender/blenkernel/intern/report.c:87 - 3 0xc921ffb in sound_mixdown_exec /home/dev/01-data/01-git/blender-git/blender/source/blender/editors/sound/sound_ops.c:394 - 4 0x718c316 in wm_operator_invoke /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:1403 - 5 0x718de67 in wm_operator_call_internal /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:1630 - 6 0x718e5cc in WM_operator_call_py /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:1708 - 7 0x97e0b0f in pyop_call /home/dev/01-data/01-git/blender-git/blender/source/blender/python/intern/bpy_operator.c:303 - 8 0x21215e83 in cfunction_call Objects/methodobject.c:552 - 9 0x211d02e7 in _PyObject_MakeTpCall Objects/call.c:215 - 10 0x421be3a in _PyObject_VectorcallTstate Include/cpython/abstract.h:112 - 11 0x421be3a in _PyObject_VectorcallTstate Include/cpython/abstract.h:99 - 12 0x421be3a in PyObject_Vectorcall Include/cpython/abstract.h:123 - 13 0x421be3a in call_function Python/ceval.c:5867 - 14 0x421be3a in _PyEval_EvalFrameDefault Python/ceval.c:4213 - 15 0x2128e973 in _PyEval_EvalFrame Include/internal/pycore_ceval.h:46 - 16 0x2128e973 in _PyEval_Vector Python/ceval.c:5065 - 17 0x211d04c9 in _PyObject_FastCallDictTstate Objects/call.c:153 - 18 0x211d0713 in _PyObject_Call_Prepend Objects/call.c:431 - 19 0x2123a578 in slot_tp_call Objects/typeobject.c:7486 - 20 0x211d02e7 in _PyObject_MakeTpCall Objects/call.c:215 - 21 0x421bccd in _PyObject_VectorcallTstate Include/cpython/abstract.h:112 - 22 0x421bccd in _PyObject_VectorcallTstate Include/cpython/abstract.h:99 - 23 0x421bccd in PyObject_Vectorcall Include/cpython/abstract.h:123 - 24 0x421bccd in call_function Python/ceval.c:5867 - 25 0x421bccd in _PyEval_EvalFrameDefault Python/ceval.c:4231 - 26 0x2128e7fb in _PyEval_EvalFrame Include/internal/pycore_ceval.h:46 - 27 0x2128e7fb in _PyEval_Vector Python/ceval.c:5065 - 28 0x2128e7fb in PyEval_EvalCode Python/ceval.c:1134 - 29 0x9757d29 in python_script_exec /home/dev/01-data/01-git/blender-git/blender/source/blender/python/intern/bpy_interface_run.c:137 - 30 0x9758228 in BPY_run_text /home/dev/01-data/01-git/blender-git/blender/source/blender/python/intern/bpy_interface_run.c:234 - 31 0xd8413f6 in text_run_script /home/dev/01-data/01-git/blender-git/blender/source/blender/editors/space_text/text_ops.c:775 - 32 0xd8415fe in text_run_script_exec /home/dev/01-data/01-git/blender-git/blender/source/blender/editors/space_text/text_ops.c:812 - 33 0x718c316 in wm_operator_invoke /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:1403 - 34 0x718dd01 in wm_operator_call_internal /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:1596 - 35 0x718df61 in WM_operator_name_call_ptr /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:1644 - 36 0x718f433 in WM_operator_name_call_ptr_with_depends_on_cursor /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:1837 - 37 0xcc90da4 in ui_apply_but_funcs_after /home/dev/01-data/01-git/blender-git/blender/source/blender/editors/interface/interface_handlers.c:1018 - 38 0xcd1e915 in ui_handler_region_menu /home/dev/01-data/01-git/blender-git/blender/source/blender/editors/interface/interface_handlers.c:11487 - 39 0x71850a5 in wm_handler_ui_call /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:732 - 40 0x719d98f in wm_handlers_do_intern /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:3166 - 41 0x719e9d0 in wm_handlers_do /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:3285 - 42 0x71a7641 in wm_event_do_handlers /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm_event_system.cc:3878 - 43 0x71655c9 in WM_main /home/dev/01-data/01-git/blender-git/blender/source/blender/windowmanager/intern/wm.c:623 - 44 0x421d059 in main /home/dev/01-data/01-git/blender-git/blender/source/creator/creator.c:547 - 45 0x7ffff6e46082 in __libc_start_main ../csu/libc-start.c:308 #46 0x421c20d in _start (/home/dev/01-data/01-git/blender-git/build_linux_debug_full/bin/blender+0x421c20d) 0x607000885d38 is located 24 bytes inside of 80-byte region [0x607000885d20,0x607000885d70) freed by thread T0 here: - 0 0x7ffff769351f in operator delete(void*) ../../../../src/libsanitizer/asan/asan_new_delete.cc:165 - 1 0x213fc451 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (/home/dev/01-data/01-git/blender-git/build_linux_debug_full/bin/blender+0x213fc451) - 2 0x1f219946 in aud::FileException::~FileException() /home/dev/01-data/01-git/blender-git/blender/extern/audaspace/src/Exception.cpp:78 - 3 0x213d6be2 in __gxx_exception_cleanup(_Unwind_Reason_Code, _Unwind_Exception*) (/home/dev/01-data/01-git/blender-git/build_linux_debug_full/bin/blender+0x213d6be2) previously allocated by thread T0 here: - 0 0x7ffff7692587 in operator new(unsigned long) ../../../../src/libsanitizer/asan/asan_new_delete.cc:104 - 1 0x213fc1d8 in std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) (/home/dev/01-data/01-git/blender-git/build_linux_debug_full/bin/blender+0x213fc1d8) #2 0x213fdfe4 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (/home/dev/01-data/01-git/blender-git/build_linux_debug_full/bin/blender+0x213fdfe4) SUMMARY: AddressSanitizer: heap-use-after-free /home/dev/01-data/01-git/blender-git/blender/source/blender/blentranslation/intern/blt_translation.c:43 in BLT_pgettext Shadow bytes around the buggy address: 0x0c0e80108b50: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x0c0e80108b60: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x0c0e80108b70: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x0c0e80108b80: fa fa fa fa fa fa fa fa fd fd fd fd fd fd fd fd 0x0c0e80108b90: fd fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa =>0x0c0e80108ba0: fa fa fa fa fd fd fd[fd]fd fd fd fd fd fd fa fa 0x0c0e80108bb0: fa fa fd fd fd fd fd fd fd fd fd fa fa fa fa fa 0x0c0e80108bc0: fd fd fd fd fd fd fd fd fd fa fa fa fa fa fd fd 0x0c0e80108bd0: fd fd fd fd fd fd fd fd fa fa fa fa fd fd fd fd 0x0c0e80108be0: fd fd fd fd fd fd fa fa fa fa fd fd fd fd fd fd 0x0c0e80108bf0: fd fd fd fd fa fa fa fa fd fd fd fd fd fd fd fd Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb Shadow gap: cc ```
Member

Added subscriber: @cmbasnett

Added subscriber: @cmbasnett
Member

The problem is that AUD_mixdown and AUD_mixdown_per_channel are returning pointers to the underlying data buffer of a temporary std::string.

return e.getMessage().c_str();

This function could be refactored to return whether or not the function succeeded or not and optionally fill a provided error message buffer. This way, the memory ownership rules are clearly conveyed.

The problem is that `AUD_mixdown` and `AUD_mixdown_per_channel` are returning pointers to the underlying data buffer of a temporary `std::string`. ``` return e.getMessage().c_str(); ``` This function could be refactored to return whether or not the function succeeded or not and *optionally* fill a provided error message buffer. This way, the memory ownership rules are clearly conveyed.

@cmbasnett I've just looked at the code when I saw your comment and I fully agree. Given that AUD_mixdown and AUD_mixdown_per_channel are only used by sound_mixdown_exec, this change should be easy to implement though.

@cmbasnett I've just looked at the code when I saw your comment and I fully agree. Given that `AUD_mixdown` and `AUD_mixdown_per_channel` are only used by `sound_mixdown_exec`, this change should be easy to implement though.

This issue was referenced by 1e4c557d82

This issue was referenced by 1e4c557d82b005578dd2b361701241b66ccee42f
Member

Changed status from 'Confirmed' to: 'Resolved'

Changed status from 'Confirmed' to: 'Resolved'
Joerg Mueller self-assigned this 2022-07-16 22:15:10 +02:00
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
5 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#99039
No description provided.