RAM2118 commited on
Commit
946521a
·
verified ·
1 Parent(s): ef289db

Fix crash: Add validatePluginFile and lastError to header

Browse files
Files changed (1) hide show
  1. Source/HostedPluginManager.h +6 -2
Source/HostedPluginManager.h CHANGED
@@ -15,6 +15,7 @@ public:
15
  void unloadPlugin();
16
  bool isLoaded() const;
17
  juce::String getPluginName() const;
 
18
 
19
  // Audio processing — called from audio thread
20
  void prepareToPlay(double sampleRate, int blockSize);
@@ -26,7 +27,7 @@ public:
26
  int index;
27
  juce::String id;
28
  juce::String name;
29
- float value; // 0.0–1.0 normalized
30
  juce::String displayText;
31
  bool automatable;
32
  };
@@ -39,10 +40,12 @@ public:
39
  // Thread safety
40
  juce::CriticalSection& getPluginLock() { return pluginLock; }
41
 
42
- // File path of currently loaded plugin (for state save/restore)
43
  juce::String getLoadedPluginPath() const;
44
 
45
  private:
 
 
46
  juce::AudioPluginFormatManager formatManager;
47
  std::unique_ptr<juce::AudioPluginInstance> hostedPlugin;
48
  juce::CriticalSection pluginLock;
@@ -50,6 +53,7 @@ private:
50
  double currentSampleRate = 44100.0;
51
  int currentBlockSize = 512;
52
  juce::String loadedPluginPath;
 
53
 
54
  JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(HostedPluginManager)
55
  };
 
15
  void unloadPlugin();
16
  bool isLoaded() const;
17
  juce::String getPluginName() const;
18
+ juce::String getLastError() const { return lastError; }
19
 
20
  // Audio processing — called from audio thread
21
  void prepareToPlay(double sampleRate, int blockSize);
 
27
  int index;
28
  juce::String id;
29
  juce::String name;
30
+ float value;
31
  juce::String displayText;
32
  bool automatable;
33
  };
 
40
  // Thread safety
41
  juce::CriticalSection& getPluginLock() { return pluginLock; }
42
 
43
+ // File path of currently loaded plugin
44
  juce::String getLoadedPluginPath() const;
45
 
46
  private:
47
+ bool validatePluginFile(const juce::File& pluginFile);
48
+
49
  juce::AudioPluginFormatManager formatManager;
50
  std::unique_ptr<juce::AudioPluginInstance> hostedPlugin;
51
  juce::CriticalSection pluginLock;
 
53
  double currentSampleRate = 44100.0;
54
  int currentBlockSize = 512;
55
  juce::String loadedPluginPath;
56
+ juce::String lastError;
57
 
58
  JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(HostedPluginManager)
59
  };