+PluginLV2BlackList::PluginLV2BlackList(const char *path)
+{
+ set_array_delete();
+ char lv2_blacklist_path[BCTEXTLEN];
+ sprintf(lv2_blacklist_path, "%s/%s", File::get_cindat_path(), path);
+ FILE *bfp = fopen(lv2_blacklist_path, "r");
+ if( !bfp ) return;
+ while( fgets(lv2_blacklist_path, sizeof(lv2_blacklist_path), bfp) ) {
+ if( lv2_blacklist_path[0] == '#' ) continue;
+ int len = strlen(lv2_blacklist_path);
+ if( len > 0 && lv2_blacklist_path[len-1] == '\n' )
+ lv2_blacklist_path[len-1] = 0;
+ if( !lv2_blacklist_path[0] ) continue;
+ append(cstrdup(lv2_blacklist_path));
+ }
+ fclose(bfp);
+}
+
+PluginLV2BlackList::~PluginLV2BlackList()
+{
+ remove_all_objects();
+}
+
+int PluginLV2BlackList::is_badboy(const char *uri)
+{
+ FileSystem fs;
+ for( int i=size(); --i>=0; )
+ if( !fs.test_filter(uri, get(i)) ) return 1;
+ return 0;
+}
+