|
View:
New views
2 Messages
—
Rating Filter:
Alert me
|
|
|
Verbesserte Fehlerbehandlung für DeviceScanner-Initialisierung [PATCH]Hallo Martin,
wenn der HAL-Daemon nicht läuft, kommt es beim Starten und Beenden des chipcardd4 Daemons zu komischen Fehlermeldungen (vgl. Debian Bug http://bugs.debian.org/524320), die daher rühren, dass der Fall, dass die *Scanner_new()-Funktionen auch NULL zurück liefern können, nicht abgefangen wird. Der angehängte Patch (applizierbar auf SVN-Trunk mit "patch -p1 < datei") behebt das Problem (und ist im Debian-Paket libchipcard 4.2.7-2 enthalten). Schöne Grüße Micha #! /bin/sh /usr/share/dpatch/dpatch-run ## 40_scanner_init_improved_error_handling.dpatch by Micha Lenk <micha@...> ## ## All lines beginning with `## DP:' are a description of the patch. ## DP: Fix error handling for device scanners failing to initialize ## DP: Fix for Debian Bug #524320 @DPATCH@ --- a/src/lib/server/server/devicemanager/devicemanager.c (Revision 520) +++ b/src/lib/server/server/devicemanager/devicemanager.c (Arbeitskopie) @@ -248,32 +248,42 @@ #ifdef USE_HAL DBG_INFO(0, "Adding HAL scanner"); scanner=LC_HalScanner_new(); - LC_DevMonitor_AddScanner(dm->deviceMonitor, scanner); - scanners++; + if (scanner) { + LC_DevMonitor_AddScanner(dm->deviceMonitor, scanner); + scanners++; + } #else if (dm->disablePciScan==0) { DBG_INFO(0, "Adding PCI bus scanner"); scanner=LC_PciScanner_new(); - LC_DevMonitor_AddScanner(dm->deviceMonitor, scanner); - scanners++; + if (scanner) { + LC_DevMonitor_AddScanner(dm->deviceMonitor, scanner); + scanners++; + } } if (dm->disablePcmciaScan==0) { DBG_INFO(0, "Adding PCMCIA bus scanner"); scanner=LC_PcmciaScanner_new(); - LC_DevMonitor_AddScanner(dm->deviceMonitor, scanner); - scanners++; + if (scanner) { + LC_DevMonitor_AddScanner(dm->deviceMonitor, scanner); + scanners++; + } } if (dm->disableUsbRawScan==0) { DBG_INFO(0, "Adding USB bus scanner"); scanner=LC_UsbRawScanner_new(); - LC_DevMonitor_AddScanner(dm->deviceMonitor, scanner); - scanners++; + if (scanner) { + LC_DevMonitor_AddScanner(dm->deviceMonitor, scanner); + scanners++; + } } if (dm->disableUsbTtyScan==0) { DBG_INFO(0, "Adding USB TTY bus scanner"); scanner=LC_UsbTtyScanner_new(); - LC_DevMonitor_AddScanner(dm->deviceMonitor, scanner); - scanners++; + if (scanner) { + LC_DevMonitor_AddScanner(dm->deviceMonitor, scanner); + scanners++; + } } #endif dm->lastHardwareScan=0; --- a/src/lib/server/common/halscanner.c (Revision 520) +++ b/src/lib/server/common/halscanner.c (Arbeitskopie) @@ -83,7 +83,10 @@ DBG_INFO(0, "Closing HAL scanner"); dbus_error_free(&(xsc->dbus_error)); - dbus_connection_unref(xsc->dbus_conn); + if (xsc->dbus_conn) { + dbus_connection_unref(xsc->dbus_conn); + xsc->dbus_conn = NULL; + } /*libhal_ctx_shutdown(ctx, NULL);*/ libhal_ctx_free(xsc->ctx); ------------------------------------------------------------------------------ Stay on top of everything new and different, both inside and around Java (TM) technology - register by April 22, and save $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco. 300 plus technical and hands-on sessions. Register today. Use priority code J9JMT32. http://p.sf.net/sfu/p _______________________________________________ Libchipcard-devel mailing list Libchipcard-devel@... https://lists.sourceforge.net/lists/listinfo/libchipcard-devel |
|
|
Re: Verbesserte Fehlerbehandlung für DeviceScanner-Initialisierung [PATCH]Hallo Martin,
Micha Lenk schrieb: > wenn der HAL-Daemon nicht läuft, kommt es beim Starten und Beenden des > chipcardd4 Daemons zu komischen Fehlermeldungen (vgl. Debian Bug > http://bugs.debian.org/524320), die daher rühren, dass der Fall, dass > die *Scanner_new()-Funktionen auch NULL zurück liefern können, nicht > abgefangen wird. Der angehängte Patch (applizierbar auf SVN-Trunk mit > "patch -p1 < datei") behebt das Problem (und ist im Debian-Paket > libchipcard 4.2.7-2 enthalten). Ich würde mich freuen, wenn der Patch ins SVN übernommen wird. Schöne Grüße Micha ------------------------------------------------------------------------------ Crystal Reports - New Free Runtime and 30 Day Trial Check out the new simplified licensign option that enables unlimited royalty-free distribution of the report engine for externally facing server and web deployment. http://p.sf.net/sfu/businessobjects _______________________________________________ Libchipcard-devel mailing list Libchipcard-devel@... https://lists.sourceforge.net/lists/listinfo/libchipcard-devel |
| Free embeddable forum powered by Nabble | Forum Help |