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

54 commits

Author SHA1 Message Date
reuk
83e5264c86
Formatting: Remove double-dots from comments and other strings 2025-11-18 15:47:42 +00:00
reuk
90f37e27ea Windows: Fix DLL build
There were a few "ambiguous operator new/delete" errors that were due to
inheriting from a private base class that used the leak detector. These
errors are resolved by adding the leak detector to the derived classes.

JUCE_API was missing from a few useful types, notably the ARA hosting
types.
2024-10-22 13:24:46 +01:00
reuk
c6110c09b5 Timer: Warn if the TimerThread outlives the ScopedJuceIniitaliser_GUI 2024-10-21 21:54:30 +01:00
reuk
80ac9a78a0
Singleton: Add new macros to simplify singleton creation
The INLINE macros allow singletons to be declared and defined in one
line, without requiring a separate JUCE_IMPLEMENT_SINGLETON statement.
2024-10-16 10:36:52 +01:00
Anthony Nicholls
6c2d149ef3 Versioning: Add the JUCE version number to any internally created threads 2024-09-26 08:10:56 +00:00
Anthony Nicholls
c4d5ffa7ab ListenerList: Add a thread safe ListenerList type 2024-06-07 20:25:39 +01:00
Anthony Nicholls
98acf79859 Timer: Prevent assertion from the Shutdown detector 2024-05-30 18:33:03 +01:00
Anthony Nicholls
9b44fa750b Timer: Stop the timer thread on shutdown to prevent a potential hang on windows
This commit reverts commit: 9e9da250 as it introduced a regression.
On windows when exit is called on a dll it forcibly kills any threads
still running before destroying any static objects. This means if a
Timer object is static the timer thread will be killed. Later when the
static object is destroyed it will wait for the thread to exit, which
because the OS forcibly killed it will never come true.
2024-05-30 18:33:03 +01:00
Anthony Nicholls
9e9da250eb Timer: Ensure the timer thread is deleted before any static or global destructors run
In cases where there was a static or global instance of a class that
inherited from Timer, due to the order of events when a dll is unloaded
on windows, there was a risk of an infinite hang. Deleting the timer
thread before the dll is unloaded avoids this occurring.
2024-05-10 11:55:28 +01:00
Tom Poole
94d98a2b10 Update licensing information 2024-04-16 11:39:35 +01:00
Anthony Nicholls
e607b15388 Timer: Always ensure the timer thread is started 2024-04-11 10:54:05 +00:00
Anthony Nicholls
db60c1d226 Timer: Prevent memory leaks when using callAfterDelay 2024-02-02 14:01:34 +00: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
6bf9bb9a2e Add final specifiers in implementation files 2023-10-10 16:12:38 +01: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
Tom Poole
dea3fe60e4 Update copyright banners 2022-04-04 12:36:32 +01:00
reuk
3fa38114d1
AsyncUpdater: Cancel updates in derived class destructors 2022-02-18 16:43:25 +00: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
5ae32084a7 Made the assertion in the Timer destructor slightly less strict 2020-11-13 18:16:04 +00:00
reuk
1dae941600 Timer: Add assertion to warn when destroying a timer from a background thread 2020-10-20 10:16:13 +01:00
ed
b5214a341e Normalised lambda whitespace 2020-06-05 09:37:56 +01:00
reuk
4cf66d6522 Cleanup: Remove redundant inlines 2020-04-27 10:22:06 +01:00
Tom Poole
894e7d2bd2 Updated all license headers 2020-04-23 17:30:39 +01:00
jules
cadac817c6 Enabled some more warning flags in Xcode, and fixed the problems they caused 2019-01-11 09:52:10 +00:00
jules
5979288706 Added some macros for asserting when functions are called in an unsafe manner outside the message thread. 2018-10-16 17:39:54 +01:00
jules
dee78f29f6 Misc cleanups and modernisation 2018-05-11 12:46:30 +01:00
jules
92f16c1d39 Fixed some Timer threading issues 2017-12-07 14:59:45 +00:00
jules
f85d706131 Some minor formatting and comment fixes 2017-11-28 17:46:15 +00:00
jules
bdc5a800a6 Bit of cleanup in Timer 2017-10-17 17:23:17 +01:00
jules
eda613c6db Moved all "namespace juce" declarations from module headers to the individual .h and .cpp source files. This makes life a lot easier for Intellisense and other IDE autocompletion tools 2017-09-08 08:59:55 +01:00
tpoole
f4046909ab Added an OS X 10.5 compatible std::function replacement 2017-05-03 15:36:25 +01:00
hogliux
b5afccc37c Updated file headers and the README with the JUCE 5 license 2017-04-27 14:43:04 +01:00
jules
39284e1d0f Added static method Timer::callAfterDelay() to invoke a one-shot lambda function 2017-03-06 15:05:14 +00:00
tpoole
2e84129479 Updated the juce_audio_basics, juce_audio_devices, juce_blocks_basics, juce_core and juce_events modules to a new ISC license 2016-12-14 10:07:26 +00:00
jules
15d746cf6e Added a safety mechanism for pathological cases where user code that repeatedly blocks in a timer callback could get the event loop stuck 2016-02-12 11:36:34 +00:00
jules
c2bd54aefc Added some assertions to catch event-based objects being used before the message manager has been initialised 2016-02-10 12:37:06 +00:00
jules
4b4d21682e More refactoring of Timer internals to reduce thread wake-up frequency 2015-10-28 11:22:27 +00:00
jules
0506bc6100 Tweaked Timer and TimeSliceThread to reduce the frequency of their calls to wait() 2015-10-27 11:49:06 +00:00
hogliux
c7b8e77031 Update copyright notice 2015-07-22 15:59:34 +01:00
jules
490baecdc5 tweaks to avoid user code name clashes with Timer. 2015-05-25 10:05:45 +01:00
jules
05c68c28f3 Minor layout clean-ups. 2015-01-08 17:44:24 +00:00
jules
9e36c4ecca Added method Timer::startTimerHz 2014-11-04 11:42:03 +00:00
jules
c577b04ccc Removed some Timer debugging code that wasn't really very useful. 2014-03-14 17:54:17 +00:00
jules
c75a7300f5 Added some 'override' modifiers to overridden methods. 2013-06-23 23:09:52 +01:00
jules
03c2801f3f Copyright header update in all module files. juce_core modules are now ISC licensed. All other modules are GPLv2/3/AGPLv3 2013-06-13 13:17:12 +01:00
jules
a77a671f88 Workaround for mysterious timer message loss on linux. 2013-03-21 09:50:16 +00:00
jules
0ceeb573d8 Minor changes to avoid pedantic compiler warnings. 2012-12-04 21:39:15 +00:00
jules
02f5a1f876 VSTPluginFormat: internal refactoring, and some new accessor methods. 2012-10-19 09:47:28 +01:00
jules
bdd778332d Removed some unused android code. Refactored some messaging code. 2012-03-25 20:09:57 +01:00