summaryrefslogtreecommitdiff
path: root/vfs.c
diff options
context:
space:
mode:
Diffstat (limited to 'vfs.c')
-rw-r--r--vfs.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/vfs.c b/vfs.c
index d91b59ab..08badec1 100644
--- a/vfs.c
+++ b/vfs.c
@@ -32,14 +32,15 @@ vfs_fopen (const char *fname) {
int i;
for (i = 0; plugs[i]; i++) {
DB_vfs_t *p = plugs[i];
- if (!p->scheme_names) {
+ if (!p->get_schemes) {
fallback = p;
continue;
}
int n;
- for (n = 0; p->scheme_names[n]; n++) {
- size_t l = strlen (p->scheme_names[n]);
- if (!strncasecmp (p->scheme_names[n], fname, l)) {
+ const char **scheme_names = p->get_schemes ();
+ for (n = 0; scheme_names[n]; n++) {
+ size_t l = strlen (scheme_names[n]);
+ if (!strncasecmp (scheme_names[n], fname, l)) {
return p->open (fname);
}
}