Remove plugins who's files no longer exists issue

When I click on the “remove plugins who’s files no longer exist” option on the pluginListComponent every plugin disappears. I would think the path might have changed … but it hasn’t … I can rescan and add them, and then remove them all again.

I don’t remember this being an issue before upgrading to snow leopard … and I just verified that it is not an issue on my PC compiled version.

Also … probably related (and how I actually noticed the problem) … when the plugins reload from description (I save a list of what plugins I’m using when the program closes and reload them upon opening again) … I get a warning from the juce that the path names are not correct (they are relative I think) … and so the plugin scanner will look for them in the CWD … which is not where they are of course, so no plugins get reloaded.

I haven’t touched any of that code… Really not sure exactly what’s going on there, TBH.

I should mention that it works fine to reload VSTs from identity stings … but I guess since AUs are system managed, when JUCE looks for the file if doesn’t know where to look? I mean, when I scan for new or updated AUs it finds tham all … but then they disappear with the “remove plugs whose files no longer exist”. I noticed in the docs that it doesn’'t actually use the directories listed for scanning

AudioPluginFormat::searchPathsForPlugins
"Searches a suggested set of directories for any plugins in this format.
The path might be ignored, e.g. by AUs, which are found by the OS rather than manually. "

Can I assume that others can reload AU plugins from strings successfully on startup? In snow leopard?

Ah, it’s probably just the code that checks for the file’s existence not being smart enough to recognise that it’s an AU id, not a real file.

right. What do you recommend for reloading plugins from the ident string? Is there a way to append the description with a path or something? It’s kinda a bummer having to reload all my plugins one by one every time I start the program.

perhaps I am missing something simple here?

ps - Also, I’ve noticed a few AU plugs scan and erroneously report 0 ins/0 outs (most notably NI’s Battery 3). Not sure if it’s because Battery is suppose to have a changeable number of channels (there is a setting in there that I have set to non-zero of course) … but somehow juce doesn’t like that it’s variable, and it always believes it has 0 outputs?

http://www.rawmaterialsoftware.com/viewtopic.php?f=8&t=3286&p=17425&hilit=battery#p17425

You seem to be getting very confused by this, but It looks like a trivial thing to fix - a quick look at the AU classes show that it was just dumbly assuming the identifer was a filename, so something like this would probably be all that’s needed:

bool AudioUnitPluginFormat::doesPluginStillExist (const PluginDescription& desc) { if (desc.fileOrIdentifier.startsWithIgnoreCase (auIdentifierPrefix)) return fileMightContainThisPluginType (desc.fileOrIdentifier); else return File (desc.fileOrIdentifier).exists(); }

right, I got it. And I see the tip got it too … glad to see your still working 50 hours a day. : )