mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-10 08:36:32 +01:00
fix plugin-creator display for non LADSPA plugins
e.g. "u-he"
This commit is contained in:
parent
e6b95a3d65
commit
13b9476f40
1 changed files with 27 additions and 20 deletions
|
|
@ -404,18 +404,23 @@ PluginSelector::refiller (const PluginInfoList& plugs, const::std::string& filte
|
|||
string creator = (*i)->creator;
|
||||
string::size_type pos = 0;
|
||||
|
||||
if ((*i)->type == ARDOUR::LADSPA) {
|
||||
/* stupid LADSPA creator strings */
|
||||
#ifdef PLATFORM_WINDOWS
|
||||
while (pos < creator.length() && creator[pos] > -2 && creator[pos] < 256 && (isalnum (creator[pos]) || isspace (creator[pos]))) ++pos;
|
||||
#else
|
||||
while (pos < creator.length() && (isalnum (creator[pos]) || isspace (creator[pos]))) ++pos;
|
||||
#endif
|
||||
} else {
|
||||
pos = creator.length ();
|
||||
}
|
||||
// If there were too few characters to create a
|
||||
// meaningful name, mark this creator as 'Unknown'
|
||||
if (creator.length()<2 || pos<3)
|
||||
if (creator.length() < 2 || pos < 3) {
|
||||
creator = "Unknown";
|
||||
else
|
||||
} else{
|
||||
creator = creator.substr (0, pos);
|
||||
}
|
||||
|
||||
newrow[plugin_columns.creator] = creator;
|
||||
|
||||
|
|
@ -791,22 +796,24 @@ PluginSelector::create_by_creator_menu (ARDOUR::PluginInfoList& all_plugs)
|
|||
if (manager.get_status (*i) == PluginManager::Hidden) continue;
|
||||
|
||||
string creator = (*i)->creator;
|
||||
|
||||
/* stupid LADSPA creator strings */
|
||||
string::size_type pos = 0;
|
||||
|
||||
if ((*i)->type == ARDOUR::LADSPA) {
|
||||
/* stupid LADSPA creator strings */
|
||||
#ifdef PLATFORM_WINDOWS
|
||||
while (pos < creator.length() && creator[pos]>(-2) && creator[pos]<256 && (isprint (creator[pos]))) ++pos;
|
||||
while (pos < creator.length() && creator[pos] > -2 && creator[pos] < 256 && (isalnum (creator[pos]) || isspace (creator[pos]))) ++pos;
|
||||
#else
|
||||
while (pos < creator.length() && (isalnum (creator[pos]) || isspace (creator[pos]))) ++pos;
|
||||
#endif
|
||||
} else {
|
||||
pos = creator.length ();
|
||||
}
|
||||
|
||||
// Check to see if we found any invalid characters.
|
||||
if (creator.length() != pos) {
|
||||
// If there were too few characters to create a
|
||||
// meaningful name, mark this creator as 'Unknown'
|
||||
if (pos<3)
|
||||
creator = "Unknown?";
|
||||
else
|
||||
if (creator.length() < 2 || pos < 3) {
|
||||
creator = "Unknown";
|
||||
} else{
|
||||
creator = creator.substr (0, pos);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue