putting the NM client event loop in a separate thread


My application is getting libdbus segfaults when accessing a few specific nm functions and I am wondering if it is because I have the nm client event loop running is a separate thread.

The application passes the nm_client into the thread; the thread uses the g_main_loop_run (gmain);

It appears to work for the most part, however there are a few nm calls that always cause a libdbus segfault:

segfault at 4 ip 004b37d4 sp bf9bd40c error 6 in libdbus-1.so.3.5.7[48c000+47000]

The calls that seem to precipitate the segfault are:
a) nm_device_wifi_get_active_access_point (NM_DEVICE_WIFI (device));
b) nm_device_wifi_get_access_points (NM_DEVICE_WIFI (device));

Prior to the call, I am able to query the "device" using other calls that do not cause any problems:

1) state = nm_device_get_state (device);    ( state = 100 )
2) nm_device_wifi_get_permanent_hw_address (NM_DEVICE_WIFI (device));
3) nm_device_wifi_get_bitrate (NM_DEVICE_WIFI (device));
4) nm_device_wifi_get_mode (NM_DEVICE_WIFI (device));

I am running on ubuntu 11.10

Any thoughts would be much appreciated.

Thank you,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]