summaryrefslogtreecommitdiff
path: root/vfs.c
diff options
context:
space:
mode:
authorGravatar waker <wakeroid@gmail.com>2011-01-31 19:29:57 +0100
committerGravatar waker <wakeroid@gmail.com>2011-01-31 19:29:57 +0100
commit80e8e0f4a5a214de8884be245049b5fbc53cf4aa (patch)
tree1c108752208456d9d2da0410926f73779b7a8042 /vfs.c
parentc3d28f081ec9263980e863316a3eeae177a15be4 (diff)
added container support to vfs plugin api
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);
}
}