1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-10 23:44:24 +00:00
Commit graph

513 commits

Author SHA1 Message Date
Tom Poole
aace97904c Bump version number to 7.0.11 2024-03-26 08:04:02 +00:00
Anthony Nicholls
fe00442335 Copyright: Fix incorrect or inconsistent copyright notices 2024-03-25 10:22:58 +00:00
Tom Poole
4555a8d1ad Bump version number to 7.0.10 2024-02-12 15:15:15 +00:00
Anthony Nicholls
db60c1d226 Timer: Prevent memory leaks when using callAfterDelay 2024-02-02 14:01:34 +00:00
attila
cc60286c89 ConnectedChildProcess: Wait for process termination on Linux to not leave zombies
This change also avoids the AudioPluginHost leaving zombie child
processes behind.
2024-01-17 15:03:48 +01:00
attila
d810a168eb Use the new TimedCallback in the codebase 2024-01-17 15:03:48 +01:00
attila
0611baf1be Add ChildProcessManager
The new class hold a list of ChildProcesses and periodically checks
their return value until they report termination. On Linux this check
is necessary to avoid leaving zombie processes behind.
2024-01-17 15:03:48 +01:00
attila
4f4ddf9733 AU Client: Use ScopedJuceInitialiser_GUI to ensure the MessageManager exists
This makes the AU Client compatible with other classes also using the
ScopedJuceInitialiser_GUI, specifically the ARADocumentController.
2024-01-02 16:34:54 +01:00
Anthony Nicholls
005040da77 TimerThread: Always wait indefinitely for the timer thread to finish 2023-12-01 10:09:09 +00:00
Anthony Nicholls
47be26deed Timer: Replace DeletedAtShutdown with SharedResourcePointer 2023-12-01 10:09:09 +00:00
Tom Poole
61aa1fc4ab Bump version number to 7.0.9 2023-11-20 14:03:35 +00:00
Tom Poole
45494e34d5 Bump version number to 7.0.8 2023-10-19 09:06:32 +01:00
Anthony Nicholls
5c8b7fe0e1 MessageMangerLock: Fix a race condition 2023-10-13 16:23:15 +01:00
Tom Poole
6bf9bb9a2e Add final specifiers in implementation files 2023-10-10 16:12:38 +01:00
Anthony Nicholls
158220ddfa Formatting: Use nested namespace definitions 2023-10-09 14:49:18 +01:00
Tom Poole
4153d59e39 Formatting 2023-10-02 15:42:20 +01:00
Tom Poole
ff0cb4ad5b Use NullCheckedInvocation in more places 2023-10-02 13:40:10 +01:00
Tom Poole
9b041f3d74 Add a base clang-tidy configuration 2023-09-18 11:24:19 +01:00
reuk
d47a7d18c1
MessageManager::Lock: Protect Lock from concurrent accesses
Previously, the Lock was not thread-safe when multiple threads were
locking/unlocking a single Lock instance simultaneously. This
isn't normally a problem when using the MessageManagerLock type, because
each MessageManagerLock contains its own private MessageManager::Lock,
and it's not possible for multiple threads to modify that private lock.

This change improves safety when using a MessageManager::Lock in the
manner of a CriticalSection or other JUCE lock type.
2023-08-23 11:14:33 +01:00
Tom Poole
b769982bb5 Bump version number to 7.0.7 2023-08-23 09:06:58 +01:00
Tom Poole
d5cb08e60e Bump version number to 7.0.6 2023-08-03 10:58:48 +01:00
reuk
33e81616ad
MessageManager: Improve thread safety of Lock type
Previously, the following sequence of events was possible:

Background thread                   Main thread
------------------------------------------------------------------------
Lock::tryAcquire()
    Run to blockingMessage->post()

                                    BlockingMessage::messageCallback()
                                        Run to abortWait.set (1)

Lock::tryAcquire()
    Exit through return true

Lock::~Lock()
    Destroy memory used for Lock

                                    BlockingMessage::messageCallback()
                                        Execute lockedEvent.signal()
                                        Memory already freed, crash
2023-05-02 19:37:47 +01:00
reuk
8fc76c4376
LockingAsyncUpdater: Add a new slightly-more-threadsafe AsyncUpdater alternative 2023-04-18 11:39:39 +01:00
Anthony Nicholls
05d5c94990
Native: Rename all native files for improved consistency 2023-04-04 19:54:29 +01:00
reuk
4fbc4da29a
Windows: Always define RunningInUnity flag in juce_gui_basics TU 2023-03-30 15:08:04 +01:00
reuk
5e866b6156
MessageManager: Fix build issue introduced in 95f823ff72 2023-03-16 10:35:42 +00:00
reuk
95f823ff72
MessageManager: Tidy up mac implementation 2023-03-14 19:13:03 +00:00
reuk
33ef4a86f4
Plugin Client: Remove unnecessary wrapper files 2023-03-14 19:13:03 +00:00
reuk
10bd8235e7
Plugin Client: Move all private helper functions into detail namespace 2023-03-13 13:09:30 +00:00
attila
f9ff497978 CMake: Add embedded Linux subprocess for WebView support
In order to display a WebKit based webview a plugin will deploy a
temporary standalone executable on the system and host the WebKit
instance inside that.
2023-03-02 17:49:34 +00:00
reuk
49a954d473
WASAPI: Only send change broadcast when devices are updated 2023-01-25 17:07:24 +00:00
Tom Poole
78f1baae08 Bump version number to 7.0.5 2023-01-25 11:37:31 +00:00
Tom Poole
715fa7e8dc Bump version number to 7.0.4 2023-01-05 14:36:45 +00:00
Tom Poole
0efa02a332 WinRTWrapper: Allow service recreation 2023-01-03 14:12:03 +00:00
reuk
c8753dcc9a
ApplicationBase: Assume UTF-8 commandline parameter encoding 2022-12-15 17:25:47 +00:00
reuk
28f2157912
Convert ignoreUnused to [[maybe_unused]] 2022-12-01 11:41:50 +00:00
Tom Poole
306ed633c6 Bump version number to 7.0.3 2022-11-29 11:04:54 +00:00
chroma
d3cff375be Thread: Introduce a new Thread backend
This is a breaking change - see BREAKING-CHANGES.txt
2022-10-18 11:49:47 +01:00
reuk
59a47a4638
HWNDComponentPeer: Fix icon leaks
Co-authored-by: ValentynPavliuchenkoA <valentyn.pavliuchenko@avid.com>
2022-10-06 18:53:09 +01:00
reuk
b3a4d54a72
Build: Update the minimum C++ standard to C++17 2022-09-12 16:14:57 +01:00
Tom Poole
7296b8e3f7 Bump version number to 7.0.2 2022-08-15 17:26:35 +01:00
attila
53619b927c Eliminate all usages of JUCE_STANDALONE_APPLICATION in the modules 2022-08-03 13:06:55 +00:00
attila
d246cc280d MessageManager: Add mutex to isThisTheMessageThread() and setCurrentThreadAsMessageThread() 2022-07-14 19:18:27 +00:00
Tom Poole
fd8607302d Bump version number to 7.0.1 2022-07-04 15:07:43 +01:00
Tom Poole
8b399998b4 Bump version number to 7.0.0 2022-06-21 08:38:55 +01:00
Tom Poole
83176e23ca Add a version ID macro 2022-06-16 11:16:33 +01:00
reuk
7dd0cffe71
ConnectedChildProcess: Always cancel pending async updates before background thread stops 2022-05-23 13:09:26 +01:00
Tom Poole
db3c6e6216 macOS/iOS: Fix unguarded availability warnings 2022-04-26 15:37:03 +01:00
reuk
c91514f57f
VST3 Client: Properly notify host about added/removed event loop FDs 2022-04-22 14:18:49 +01:00
reuk
19ddbe2368
Warnings: Fix missing-prototypes warnings 2022-04-22 14:18:48 +01:00