diff options
author | 2010-11-05 22:13:31 +0100 | |
---|---|---|
committer | 2010-11-05 22:13:31 +0100 | |
commit | 0b1269a7704d0e89f690bddd9b63f6fb596dff33 (patch) | |
tree | bd6a949cad043fe40f2299f043714e7fbb490d2a /plugins.c | |
parent | df3e33e8a650c1c7f173156875bec73764bdd1f9 (diff) |
added fallback gtkui plugin
Diffstat (limited to 'plugins.c')
-rw-r--r-- | plugins.c | 13 |
1 files changed, 10 insertions, 3 deletions
@@ -639,8 +639,8 @@ plug_load_all (void) { int i; for (i = 0; i < n; i++) { - // no hidden files - while (namelist[i]->d_name[0] != '.') + // skip hidden files and fallback plugins + while (namelist[i]->d_name[0] != '.' && !strstr (namelist[i]->d_name, ".fallback.")) { int l = strlen (namelist[i]->d_name); if (l < 3) { @@ -679,7 +679,14 @@ plug_load_all (void) { void *handle = dlopen (fullname, RTLD_NOW); if (!handle) { trace ("dlopen error: %s\n", dlerror ()); - break; + strcpy (fullname + strlen(fullname) - 3, ".fallback.so"); + handle = dlopen (fullname, RTLD_NOW); + if (!handle) { + break; + } + else { + fprintf (stderr, "successfully started fallback plugin %s\n", fullname); + } } d_name[l-3] = 0; strcat (d_name, "_load"); |