[Bug 219356] New: suseplugger crashes with dbus error
https://bugzilla.novell.com/show_bug.cgi?id=219356 Summary: suseplugger crashes with dbus error Product: openSUSE 10.2 Version: Beta 2 Platform: Other OS/Version: Other Status: NEW Severity: Major Priority: P5 - None Component: KDE AssignedTo: thoenig@novell.com ReportedBy: aj@novell.com QAContact: qa@suse.de CC: coolo@novell.com, dkukawka@novell.com suseplugger --sessioninit process 10743: arguments to dbus_message_new_method_call() were incorrect, assertion "_dbus_check_is_valid_path (path)" failed in file dbus-message.c line 1074. This is normally a bug in some application using the D-Bus library. D-Bus not built with -rdynamic so unable to print a backtrace KCrash: Application 'suseplugger' crashing... -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #1 from coolo@novell.com 2006-11-09 03:22 MST ------- the suseplugger code didn't change in any way, so I assume it's some dbus or some hal regression, but beta2 is unable to produce some meaningful backtrace. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 thoenig@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|thoenig@novell.com |coolo@novell.com ------- Comment #2 from thoenig@novell.com 2006-11-09 03:55 MST ------- You're passing NULL not a DBusError to the libhal_* calls. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #5 from coolo@novell.com 2006-11-09 04:06 MST ------- the mediamanager of KDE worked fine on AJ's laptop and has plenty of NULL passing calls -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #6 from thoenig@novell.com 2006-11-09 04:19 MST ------- It only affects some libhal calls. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #7 from thoenig@novell.com 2006-11-09 04:20 MST ------- Affected functions should be: @@ -1457,7 +1457,7 @@ libhal_device_set_property_helper (LibHa @@ -1650,7 +1650,7 @@ libhal_device_property_strlist_append (L @@ -1703,7 +1703,7 @@ libhal_device_property_strlist_prepend ( @@ -1756,7 +1756,7 @@ libhal_device_property_strlist_remove_in @@ -1808,7 +1808,7 @@ libhal_device_property_strlist_remove (L @@ -1867,7 +1867,7 @@ libhal_device_lock (LibHalContext *ctx, @@ -1928,7 +1928,7 @@ libhal_device_unlock (LibHalContext *ctx @@ -1983,7 +1983,7 @@ libhal_new_device (LibHalContext *ctx, D @@ -2066,7 +2066,7 @@ libhal_device_commit_to_gdl (LibHalConte @@ -2122,7 +2122,7 @@ libhal_remove_device (LibHalContext *ctx @@ -2314,7 +2314,7 @@ libhal_merge_properties (LibHalContext * @@ -2604,7 +2604,7 @@ libhal_device_add_capability (LibHalCont @@ -2744,7 +2744,7 @@ libhal_device_property_watch_all (LibHal @@ -2778,7 +2778,7 @@ libhal_device_add_property_watch (LibHal @@ -2808,7 +2808,7 @@ libhal_device_remove_property_watch (Lib @@ -3223,7 +3223,7 @@ libhal_device_rescan (LibHalContext *ctx @@ -3283,7 +3283,7 @@ libhal_device_reprobe (LibHalContext *ct @@ -3354,7 +3354,7 @@ dbus_bool_t libhal_device_emit_condition @@ -3420,7 +3420,7 @@ libhal_device_addon_is_ready (LibHalCont @@ -3491,7 +3491,7 @@ libhal_device_claim_interface (LibHalCon -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #8 from thoenig@novell.com 2006-11-09 04:22 MST ------- Just for the record: HAL has to decide upstream whether it is allowed to pass NULL or not. At the current point of time it is neither a bug of the applications using libhal nor is it a bug of libdbus-1. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #10 from aj@novell.com 2006-11-09 05:13 MST ------- Can we add a nonnull attribute to the header so that these calls are caught during compilation? I mean something like in glibc's headers: extern int access (__const char *__name, int __type) __nonnull ((1)); Not sure whether GCC produces an error for these but it should give a warning... -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 coolo@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|coolo@novell.com |dkukawka@novell.com Severity|Major |Normal ------- Comment #11 from coolo@novell.com 2006-11-09 06:04 MST ------- for HAL to decide (and most likely future material) -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 aj@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- Severity|Normal |Critical ------- Comment #12 from aj@novell.com 2006-11-09 08:18 MST ------- Still crashing with the new hal package. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #13 from thoenig@novell.com 2006-11-09 08:33 MST ------- Backtrace (gdb) bt #0 0xb7f7f410 in ?? () #1 0xbfcec44c in ?? () #2 0x00000006 in ?? () #3 0x000046b0 in ?? () #4 0xb7e4a060 in raise () from /lib/libc.so.6 #5 0xb7e4b801 in abort () from /lib/libc.so.6 #6 0xb6d070d5 in dbus_malloc () from /usr/lib/libdbus-1.so.3 #7 0xb6d03016 in dbus_watch_handle () from /usr/lib/libdbus-1.so.3 #8 0xb6cf76a0 in dbus_message_new_method_call () from /usr/lib/libdbus-1.so.3 #9 0xb7412f9b in libhal_device_get_property_string () from /usr/lib/libhal.so.1 #10 0xb7f57673 in libhal_device_get_property_QString () from /opt/kde3/lib/libkdeinit_suseplugger.so #11 0xb7f5971e in HWItem::added () from /opt/kde3/lib/libkdeinit_suseplugger.so #12 0xb7f5a5ba in HWItemHandler::handle () from /opt/kde3/lib/libkdeinit_suseplugger.so #13 0xb7f5ad48 in HWItemHandler::sessioninit () from /opt/kde3/lib/libkdeinit_suseplugger.so #14 0xb7f5b077 in HWItemHandler::qt_invoke () from /opt/kde3/lib/libkdeinit_suseplugger.so #15 0xb6f843cd in QObject::activate_signal () from /usr/lib/qt3/lib/libqt-mt.so.3 #16 0xb72be0ce in QSignal::signal () from /usr/lib/qt3/lib/libqt-mt.so.3 #17 0xb6fa0497 in QSignal::activate () from /usr/lib/qt3/lib/libqt-mt.so.3 #18 0xb6fa7823 in QSingleShotTimer::event () from /usr/lib/qt3/lib/libqt-mt.so.3 #19 0xb6f25647 in QApplication::internalNotify () from /usr/lib/qt3/lib/libqt-mt.so.3 #20 0xb6f264f9 in QApplication::notify () from /usr/lib/qt3/lib/libqt-mt.so.3 #21 0xb776d1d2 in KApplication::notify () from /opt/kde3/lib/libkdecore.so.4 #22 0xb6f1a663 in QEventLoop::activateTimers () from /usr/lib/qt3/lib/libqt-mt.so.3 #23 0xb6ed4bd0 in QEventLoop::processEvents () from /usr/lib/qt3/lib/libqt-mt.so.3 #24 0xb6f3c0e0 in QEventLoop::enterLoop () from /usr/lib/qt3/lib/libqt-mt.so.3 #25 0xb6f3bf76 in QEventLoop::exec () from /usr/lib/qt3/lib/libqt-mt.so.3 #26 0xb6f2500f in QApplication::exec () from /usr/lib/qt3/lib/libqt-mt.so.3 #27 0xb7f56cca in kdemain () from /opt/kde3/lib/libkdeinit_suseplugger.so #28 0x080484c2 in ?? () #29 0x00000002 in ?? () #30 0xbfcecfb4 in ?? () #31 0x00000000 in ?? () -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #14 from coolo@novell.com 2006-11-09 08:42 MST ------- libhal_device_get_property_string is not in your list of affected functions? I can add a dummy error there just fine -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #15 from thoenig@novell.com 2006-11-09 08:47 MST ------- Yes, that would be fine. I'm investigating libhal_device_get_property_string in the meantime. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 thoenig@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |NEEDINFO Info Provider| |coolo@novell.com ------- Comment #16 from thoenig@novell.com 2006-11-09 08:51 MST ------- Coolo, is it possible that you're calling libhal_device_get_property_string with udi == NULL? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #17 from dkukawka@novell.com 2006-11-09 08:53 MST ------- libhal_device_get_property_string() is not the problem, there is already a check: dbus_move_error (&_error, error); if (error != NULL && dbus_error_is_set (error)) { dbus_message_unref (message); return NULL; } -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #18 from thoenig@novell.com 2006-11-09 08:56 MST ------- The stack looks like that: suseplugger calls libhal_device_get_property_QString which invokes libhal: 1035 libhal_device_get_property_string (LibHalContext *ctx, 1036 const char *udi, const char *key, DBusError *error) 1037 { (...) 1047 message = dbus_message_new_method_call ("org.freedesktop.Hal", udi, 1048 "org.freedesktop.Hal.Device", 1049 "GetPropertyString"); In libdbus-1 dbus_message_new_method_call asserts: 1062 DBusMessage* 1063 dbus_message_new_method_call (const char *destination, 1064 const char *path, 1065 const char *interface, 1066 const char *method) (...) 1074 _dbus_return_val_if_fail (_dbus_check_is_valid_path (path), NULL); -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #19 from thoenig@novell.com 2006-11-09 08:57 MST ------- (In reply to comment #17)
libhal_device_get_property_string() is not the problem, there is already a check:
dbus_move_error (&_error, error); if (error != NULL && dbus_error_is_set (error)) { dbus_message_unref (message); return NULL; }
Yupp, we're crashing before that, it has nothing to do with DBusError. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 coolo@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEEDINFO |ASSIGNED Info Provider|coolo@novell.com | ------- Comment #20 from coolo@novell.com 2006-11-09 09:05 MST ------- Looking at the code, the udi == 0 would have to be returned from libhal_get_all_devices -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #21 from thoenig@novell.com 2006-11-09 09:09 MST ------- In libhal_device_get_property_QString: 81 _ppt_string = libhal_device_get_property_string(ctx, udi, key, NULL); (gdb) print udi $5 = 0x8113630 "" -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 dkukawka@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|dkukawka@novell.com |coolo@novell.com Status|ASSIGNED |NEW ------- Comment #23 from dkukawka@novell.com 2006-11-09 09:21 MST ------- You have simply to check if one of the udis in the list is NULL. There was nothing changed: /** * libhal_get_all_devices: [...] * Get all devices in the Global Device List (GDL). * * Returns: An array of device identifiers terminated with NULL. It is * the responsibility of the caller to free with * libhal_free_string_array(). If an error occurs NULL is returned. */ -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 coolo@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|coolo@novell.com |dkukawka@novell.com ------- Comment #24 from coolo@novell.com 2006-11-09 10:16 MST ------- did you read #21 before posting #23? The udi is not NULL but "" - which is an invalid udi returned from libhal_get_all_devices -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 thoenig@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|dkukawka@novell.com |coolo@novell.com ------- Comment #25 from thoenig@novell.com 2006-11-09 13:46 MST ------- Fair enough, an empty string is not NULL. But did you check where that comes from? The broken part of suseplugger is: susehwitem.cpp:171 QString parent_udi = libhal_device_get_property_QString(m_halContext, m_udi, "input.physical_device"); model = libhal_device_get_property_QString(m_halContext, parent_udi, "info.product"); The first call returns "" as a result of libhal returning NULL because of your code: _ppt_QString = QString(_ppt_string ? _ppt_string : ""); This is bogus. Now suseplugger is again calling libhal_device_get_property_QString. This time with an invalid udi ("") which leads to the assertion in D-Bus. Q.E.D. D-Bus may be more picky about things like that (assertion for 'path' in dbus_message_new_method_call) nowadays, but it helps us solving bugs like this one. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #26 from dkukawka@novell.com 2006-11-09 13:57 MST ------- A general hint: You have to ways to get a property from HAL: 1.) call 'dbus_bool_t libhal_device_property_exists(...)' to check if the device provide the property you search for and if not (retval == false) ignore the device (or what ever) and if (retval=true) get the value of the property or 2.) call libhal_device_get_property_string() and ignore the fact that the property is maybe not there, but check the return for NULL. If retvalue == NULL ignore the device, if retval != NULL do whatever you need to do with this information. You should check for NULL before libhal_device_get_property_QString() or for "" after. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 coolo@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |NEEDINFO Info Provider| |aj@novell.com ------- Comment #27 from coolo@novell.com 2006-11-10 03:44 MST ------- hmm, it's not crashing on my hardware - which surely doesn't help fixing ;( But as the code that triggers the problem is about detecting keyboards, I'd like to see a lshal of that laptop. Perhaps there is some new property to check? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 thoenig@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEEDINFO |ASSIGNED ------- Comment #28 from thoenig@novell.com 2006-11-10 03:58 MST ------- Created an attachment (id=104633) --> (https://bugzilla.novell.com/attachment.cgi?id=104633&action=view) lshal of an affected machine -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #29 from thoenig@novell.com 2006-11-10 03:59 MST ------- It is /org/freedesktop/Hal/devices/computer_logicaldev_input which does not have the property 'input.physical_device'. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #30 from wstephenson@novell.com 2006-11-13 09:13 MST ------- kdebase3-SuSE-10.2-60 - which should be fixed System configuration startup check disabled. (no debugging symbols found) Using host libthread_db library "/lib/libthread_db.so.1". (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) [Thread debugging using libthread_db enabled] [New Thread -1231058432 (LWP 6670)] [KCrash handler] #4 0xb6f870b6 in *__GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 #5 0xb6f88841 in *__GI_abort () at abort.c:88 #6 0xb66740d5 in dbus_malloc () from /usr/lib/libdbus-1.so.3 #7 0xb6670016 in dbus_watch_handle () from /usr/lib/libdbus-1.so.3 #8 0xb665ac64 in dbus_move_error () from /usr/lib/libdbus-1.so.3 #9 0xb7f64008 in libhal_device_get_property_string () from /usr/lib/libhal.so.1 #10 0xb6806684 in libhal_device_get_property_QString () from /opt/kde3/lib/libkdeinit_suseplugger.so #11 0xb6808c9b in HWItem::added () from /opt/kde3/lib/libkdeinit_suseplugger.so #12 0xb680960a in HWItemHandler::handle () from /opt/kde3/lib/libkdeinit_suseplugger.so #13 0xb6809d98 in HWItemHandler::sessioninit () from /opt/kde3/lib/libkdeinit_suseplugger.so #14 0xb680a0c7 in HWItemHandler::qt_invoke () from /opt/kde3/lib/libkdeinit_suseplugger.so #15 0xb75173cd in QObject::activate_signal () from /usr/lib/qt3/lib/libqt-mt.so.3 #16 0xb78510ce in QSignal::signal () from /usr/lib/qt3/lib/libqt-mt.so.3 #17 0xb7533497 in QSignal::activate () from /usr/lib/qt3/lib/libqt-mt.so.3 #18 0xb753a823 in QSingleShotTimer::event () from /usr/lib/qt3/lib/libqt-mt.so.3 #19 0xb74b8647 in QApplication::internalNotify () from /usr/lib/qt3/lib/libqt-mt.so.3 #20 0xb74b94f9 in QApplication::notify () from /usr/lib/qt3/lib/libqt-mt.so.3 #21 0xb7b411d2 in KApplication::notify () from /opt/kde3/lib/libkdecore.so.4 #22 0xb74ad663 in QEventLoop::activateTimers () from /usr/lib/qt3/lib/libqt-mt.so.3 #23 0xb7467bd0 in QEventLoop::processEvents () from /usr/lib/qt3/lib/libqt-mt.so.3 #24 0xb74cf0e0 in QEventLoop::enterLoop () from /usr/lib/qt3/lib/libqt-mt.so.3 #25 0xb74cef76 in QEventLoop::exec () from /usr/lib/qt3/lib/libqt-mt.so.3 #26 0xb74b800f in QApplication::exec () from /usr/lib/qt3/lib/libqt-mt.so.3 #27 0xb6805cca in kdemain () from /opt/kde3/lib/libkdeinit_suseplugger.so #28 0xb7f69514 in kdeinitmain () from /opt/kde3/lib/kde3/suseplugger.so #29 0x0804e33f in QGList::~QGList () #30 0x00000008 in ?? () #31 0x08080fa0 in ?? () #32 0x00000001 in ?? () #33 0x00000000 in ?? () -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #31 from wstephenson@novell.com 2006-11-13 09:37 MST ------- Crash went away with updated, no-assert-on-warning dbus packages from Timo. Hooray for masking. I guess preceding the libhal_device_get_property_QString(m_halContext, m_udi, "input.physical_device") at susehwitem.cpp:169 with an if (libhal_device_property_exists(...) ) would solve the problem properly? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 wstephenson@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|coolo@novell.com |wstephenson@novell.com ------- Comment #32 from wstephenson@novell.com 2006-11-13 10:31 MST ------- QString libhal_device_get_property_QString(LibHalContext *ctx, const char* udi, const char *key) { if (udi == 0 || !strlen(udi)) return QString(); Danny: As you can see, we do check for a null returned from libhal_device_get_property_string, but it still crashes unless we check for the existence of the property first. I could put that check into libhal_device_get_property_QString() but this causes another dbus roundtrip, right? If I can do the lightweight check ( 1. in #26 ) I would prefer this. Is your second suggestion actually the only way to do this safely, or is the assert in dbus when getting unknown properties really that aggressive? CODE: char* _ppt_string; QString _ppt_QString; DBusError error; _ppt_string = libhal_device_get_property_string(ctx, udi, key, &error); if (_ppt_string) _ppt_QString = _ppt_string; libhal_free_string(_ppt_string); return _ppt_QString; } -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 wstephenson@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |NEEDINFO Info Provider| |dkukawka@novell.com ------- Comment #33 from wstephenson@novell.com 2006-11-14 05:44 MST ------- Danny? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 clozano@pagines.cat changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |clozano@pagines.cat ------- Comment #34 from clozano@pagines.cat 2006-11-14 06:06 MST ------- I don't know whether this is related, but after suseplugger bails... the keyboard and mouse also stop responding on a x86_64 system. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #35 from dkukawka@novell.com 2006-11-14 07:16 MST ------- @will: not sure how the current code look, but this should work: /* check if the property input.physical_device exist on the device */ if (libhal_device_property_exists(m_halContext,m_udi,"input.physical_device")){ /* property should exist, now get the value */ char *udi = libhal_device_get_property_QString(m_halContext, m_udi, "input.physical_device", &error); /* do what ever you want to do with the udi of/from input.physical_device */ ... } -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #36 from clozano@pagines.cat 2006-11-14 08:28 MST ------- Created an attachment (id=105181) --> (https://bugzilla.novell.com/attachment.cgi?id=105181&action=view) lshal of an affected machine x86_64 -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #37 from clozano@pagines.cat 2006-11-14 08:31 MST ------- Created an attachment (id=105183) --> (https://bugzilla.novell.com/attachment.cgi?id=105183&action=view) KDE crash handler dump x86_64 -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 wstephenson@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEEDINFO |RESOLVED Info Provider|dkukawka@novell.com | Resolution| |FIXED ------- Comment #38 from wstephenson@novell.com 2006-11-15 09:37 MST ------- Fixed, submitted. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #39 from hugo.costelha@gmail.com 2006-11-20 07:09 MST ------- Hi. I have kdebase3-SuSE-10.2.61, which I think was supposed to have this bug fixed (it says so in the changelog). However, SUSEplugger crashes everytime on startup. Is there something I am missing, like another package that should also be updated? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=219356 ------- Comment #40 from hugo.costelha@gmail.com 2006-11-20 07:11 MST ------- Sorry, forgot to show what the error was on the console: process 4316: arguments to dbus_move_error() were incorrect, assertion "(dest) == NULL || !dbus_error_is_set ((dest))" failed in file dbus-errors.c line 254. This is normally a bug in some application using the D-Bus library. D-Bus not built with -rdynamic so unable to print a backtrace KCrash: Application 'suseplugger' crashing... -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
participants (1)
-
bugzilla_noreply@novell.com