Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Linux Validation Support #26

Merged
merged 1 commit into from
Apr 4, 2023

Conversation

baconpaul
Copy link
Contributor

  1. Don't create a message manager in the DSP thread
  2. Set validation level to 1 for linux since the leak of a Glyph (run the standalone and quit to see it) holds a timer in UI tests it seems
  3. Add the Standalone to the CMake

@JoseDiazRohena
Copy link
Contributor

  1. D'oh—good catch. This actually resolves an unrelated issue I found recently.
  2. So I take it that the issue is only reproduceable in linux?
  3. Nice.

@JoseDiazRohena
Copy link
Contributor

Ah, and also: what do you mean by a Glyph? Is it something to do with fonts?

@baconpaul
Copy link
Contributor Author

Ah, and also: what do you mean by a Glyph? Is it something to do with fonts?

If do a debug build, you run the standalone and then quit the juce leak detector will give you a leak message. The fact that it is a glyph means you somewhere assign a font to a static or a pointer which leaks or some such.

@baconpaul
Copy link
Contributor Author

And I just tested and the error doesn't appear on mac.

@JoseDiazRohena
Copy link
Contributor

Ah, and also: what do you mean by a Glyph? Is it something to do with fonts?

If do a debug build, you run the standalone and then quit the juce leak detector will give you a leak message. The fact that it is a glyph means you somewhere assign a font to a static or a pointer which leaks or some such.

I bet it has something to do with https://forum.juce.com/t/lookandfeel-custom-fonts-linux-leaks/53914/5

There's an interesting solution posed here: https://forum.juce.com/t/only-loading-fonts-once-in-a-plugin/49564

Storing fonts in struct deriving from a special juce base class that deletes derived instances on exit...might see about that.

@baconpaul
Copy link
Contributor Author

Yeah we used to do that using the juce::DeleteOnExit thing to hold references to all our in memory fonts. We cleaned it up a bit once we had a skin object but that's probably it.

Honestly though meh doesn't matter that much. Run linux at validation level 1 and ship it with this merged. Seems the plugin close to works and linux users will give you good bug reports if it doesn't.

1. Don't create a message manager in the DSP thread
2. Set validation level to 1 for linux since the leak of a
   Glyph (run the standalone and quit to see it) holds a timer
   in UI tests it seems
3. Add the Standalone to the CMake
@JoseDiazRohena
Copy link
Contributor

Yeah we used to do that using the juce::DeleteOnExit thing to hold references to all our in memory fonts. We cleaned it up a bit once we had a skin object but that's probably it.

Honestly though meh doesn't matter that much. Run linux at validation level 1 and ship it with this merged. Seems the plugin close to works and linux users will give you good bug reports if it doesn't.

Agreed.

@JoseDiazRohena JoseDiazRohena merged commit 62f98be into tote-bag-labs:main Apr 4, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants