1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-10 23:44:24 +00:00
JUCE/modules
reuk ce0fe3dc1e
EdgeTable: Keep better track of buffer memory ranges
Occasionally, on Linux, Address Sanitizer can complain about a memory
region overlap in the arguments to memcpy, originating in
EdgeTable::intersectWithEdgeTableLine. I haven't been able to reproduce
this personally.

The final memcpy call in this function requires there to be
"srcNum1 * 2" valid entries after the current "src1" ptr, and none of
those entries may overlap with the area starting at "temp".

On inspection, I think that the memory region being read is too large.
At the point of the call, src1 will point to a LineItem::level, not
LineItem::x, so there will actually be (srcNum1 * 2 - 1) valid items
following it.

All this pointer arithmetic is very difficult to understand. In an
effort to make this function slightly more understandable, I've switched
to using Spans to delineate lines of the table, which makes it easier to
keep track of the size of each line.
2024-05-20 12:49:55 +01:00
..
juce_analytics Bump version number to 8.0.0 2024-04-16 17:43:20 +01:00
juce_animation Animation: Add juce_animation module 2024-04-16 17:43:21 +01:00
juce_audio_basics AU Client: Suppress EnumCastOutOfRange Clang Analyzer warning 2024-04-26 12:23:05 +02:00
juce_audio_devices ComSmartPtr: Make ownership more explicit 2024-04-16 21:07:45 +01:00
juce_audio_formats ComSmartPtr: Make ownership more explicit 2024-04-16 21:07:45 +01:00
juce_audio_plugin_client VST3 Client: Add support for IParameterFinder interface 2024-05-08 17:53:52 +01:00
juce_audio_processors VST3 Client: Add support for IParameterFinder interface 2024-05-08 17:53:52 +01:00
juce_audio_utils MPEKeyboardComponent: Avoid asserting when clicking on highest visible key 2024-05-08 17:53:52 +01:00
juce_box2d Bump version number to 8.0.0 2024-04-16 17:43:20 +01:00
juce_core Place all choc types inside an anonymous namespace 2024-05-10 11:55:28 +01:00
juce_cryptography Bump version number to 8.0.0 2024-04-16 17:43:20 +01:00
juce_data_structures Bump version number to 8.0.0 2024-04-16 17:43:20 +01:00
juce_dsp Bump version number to 8.0.0 2024-04-16 17:43:20 +01:00
juce_events Timer: Ensure the timer thread is deleted before any static or global destructors run 2024-05-10 11:55:28 +01:00
juce_graphics EdgeTable: Keep better track of buffer memory ranges 2024-05-20 12:49:55 +01:00
juce_gui_basics Component: Cache effect images internally to Component, to avoid hash collisions in the ImageCache 2024-05-20 12:49:54 +01:00
juce_gui_extra WebBrowserComponent: Fix documentation for withInitialisationData() 2024-04-29 13:19:06 +02:00
juce_midi_ci Bump version number to 8.0.0 2024-04-16 17:43:20 +01:00
juce_opengl Direct2D: Add initial support 2024-04-18 14:16:02 +01:00
juce_osc Bump version number to 8.0.0 2024-04-16 17:43:20 +01:00
juce_product_unlocking LookAndFeel: Allow specifying a default typeface metrics kind to use 2024-04-18 14:16:00 +01:00
juce_video CameraDevice: Simplify data shared across threads, to reduce potential for data races 2024-05-20 12:49:54 +01:00
CMakeLists.txt Animation: Add juce_animation module 2024-04-16 17:43:21 +01:00