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

542 commits

Author SHA1 Message Date
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
Tom Poole
dea3fe60e4 Update copyright banners 2022-04-04 12:36:32 +01:00
Tom Poole
d5d9a02c8f ChildProcessCoordinator: Fix an issue with a missing ping thread
Following commit 093dbc7df1 pings of a
child process connection need to initialised explicitly. This commit
adds a missing initialisation.
2022-03-24 14:01:34 +00:00
Tom Poole
111bbc0979 Bump version number to 6.1.6 2022-02-28 12:53:10 +00:00
reuk
3fa38114d1
AsyncUpdater: Cancel updates in derived class destructors 2022-02-18 16:43:25 +00:00
reuk
093dbc7df1
Plugin Scanning: Fix thread sanitizer issues in the AudioPluginHost 2022-01-27 18:43:22 +00:00
reuk
6c046ffc04
AudioPluginHost: Allow out-of-process scanner to scan AUv3 plugins 2022-01-27 18:43:21 +00:00
Tom Poole
3c03693d07 Bump version number to 6.1.5 2022-01-26 13:00:05 +00:00
Tom Poole
8a6e1980d0 Bump version number to 6.1.4 2021-12-20 11:06:15 +00:00
reuk
44404508fe Bump version number to 6.1.3 2021-12-08 15:26:08 +00:00
ed
fc0f6b1f2f Tidy up 2021-12-02 09:24:55 +00:00
reuk
8458ac0186
MessageManager: Correct visibility of repostCurrentNSEvent
This commit reverts c34f13a02d

In stripped plugin builds, the repostCurrentNSEvent function was still
public. There doesn't seem to be a good reason for this, as no host
should need to call the function.

It looks like the shared code component of a Projucer-generated plugin
project was briefly built as a framework that was shared by the
different plugin wrappers. In this scenario, the framework would need to
make repostCurrentNSEvent public so that the wrappers could locate the
function. However, now that the shared code target is built as a static
library, standard external linkage should be sufficient for the symbol
to be located from the wrapper's TUs.
2021-11-24 16:20:38 +00:00
reuk
81fa777ff7
ObjC Helpers: Automatically derive appropriate signature for function 2021-11-24 11:51:11 +00:00
reuk
b72b155443
Naming: Fix up naming of ChildProcessCoordinator and ChildProcessWorker 2021-10-25 09:51:21 +01:00
reuk
4a3ea2721d
Refactoring: Use any_of(), all_of() or, none_of() instead of find_if() where possible
When the result of find_if() is only compared to the container's end(),
the operation can normally be expressed more concisely using any_of(),
all_of(), or none_of().
2021-10-06 16:59:06 +01:00
ed
b9542ccc4c Update code to use C++14 [[deprecated]] attribute
This commit removes the various compiler-specific JUCE_DEPRECATED macros and replaces them with C++14's deprecated attribute. It also removes the JUCE_CATCH_DEPRECATED_CODE_MISUSE flag as we can rely on the override specifier catching usage of these old virtual methods, and tidies up the DOXYGEN preprocessor checks as they were inconsistent across the codebase.
2021-09-29 16:14:00 +01:00
reuk
9199fa3c51
Warnings: Avoid triggering missing-prototypes warnings on macOS/iOS 2021-09-23 10:28:47 +01:00
Tom Poole
bc75010116 Bump version number to 6.1.2 2021-09-20 12:15:47 +01:00
Tom Poole
5109e30c6f Bump version number to 6.1.1 2021-09-09 12:51:15 +01:00
Tom Poole
46fe3789fc Bump version number to 6.1.0 2021-08-23 09:55:56 +01:00
ed
c799b56b60 Fix missing prototypes warnings 2021-08-16 16:08:45 +01:00
reuk
074d188239
Add ScopedLowPowerModeDisabler to suppress App Nap on macOS 2021-07-23 17:13:18 +01:00