[BRLTTY] Clumping all the braille driver modules into one big app?

Willie Walker William.Walker at Sun.COM
Thu Aug 28 20:58:22 EDT 2008


Thanks Samuel!

--with-braille-driver=all works like a charm.  In the meantime, we 
discovered the source of the problem (here's a diff):

--- brltty-3.9/Programs/sys_shlib_dlfcn.h.orig	2008-08-29 
12:14:44.073958167 +1200
+++ brltty-3.9/Programs/sys_shlib_dlfcn.h	2008-08-29 12:15:43.732981835 
+1200
@@ -44,11 +44,9 @@
    void **address = pointerAddress;
    *address = dlsym(object, symbol);

-  {
-    const char *error = dlerror();
-    if (!error) return 1;
-    LogPrint(LOG_ERR, "%s", error);
-  }
+  if (*address) return 1;
+  const char *error = dlerror();
+  LogPrint(LOG_ERR, "%s", error);
  #endif /* HAVE_DLOPEN */
    return 0;
  }

The problem is that brltty is jumping to dlerror too soon -- it should 
first check the result of dlsym.  The reason for this is that dlerror 
returns the message for the _last failed_ dlsym, not the result of the 
_last call_ to dlsym.  Internally, the Sun C library is doing some 
magic, which results in a caught/expected failure on the _ex_unwind 
symbol.  The change above checks the result of the call to dlsym before 
jumping directly to dlerror.

I hope you guys can accept this change!

Will

Samuel Thibault wrote:
> Willie Walker, le Thu 28 Aug 2008 18:29:20 -0400, a écrit :
>> Does the brltty build support this?  I see something called 
>> 'standalone-programs' in the build, but I'm not sure what it does or how 
>> to use it.
> 
> Standalone-program is for static linking. To include all drivers, just
> use --with-braille-driver=all
> 
> Samuel
> _______________________________________________
> This message was sent via the BRLTTY mailing list.
> To post a message, send an e-mail to: BRLTTY at mielke.cc
> For general information, go to: http://mielke.cc/mailman/listinfo/brltty



More information about the BRLTTY mailing list