| Anonymous | Login | Signup for a new account | 10-09-03 02:48 CEST |
| Main | My View | View Issues | Change Log | Roadmap | Docs |
| Viewing Issue Simple Details [ Jump to Notes ] | [ View Advanced ] [ Issue History ] [ Print ] | ||||||
| ID | Category | Severity | Reproducibility | Date Submitted | Last Update | ||
| 0002232 | [XMMS2] clientlib | major | always | 09-06-12 07:50 | 10-02-20 15:09 | ||
| Reporter | p00ya | View Status | public | ||||
| Assigned To | nano | ||||||
| Priority | normal | Resolution | fixed | ||||
| Status | resolved | Product Version | 0.6 DrM | ||||
| Summary | 0002232: CF clientlib spins after xmms2 quit | ||||||
| Description |
After xmms2d has quit, there is no way to remove the event sources from the CoreFoundation runloop. Consequently, the runloop ends up spinning without making any client code callbacks. This uses an undesirable waste of CPU cycles in the client. To reproduce (after 0002191 patch is applied): start xmms2d. From client code: xmmsc_connect optionally register some async results xmmsc_setup_with_cf quit xmms2d, and optionally have the client xmmsc_unref the connection watch CPU usage of client increase in top(1) or similar. The attached patch provides the client with some state on init that can be passed back to the shutdown function to deregister the runloop source. It's passed as an extra parameter. I have renamed the exported functions to be consistent with the other clientlibs. Note that but this will NOT cause a compatibility issue: the declaration was wrong to start off with. See 0002191 which demonstrates that the CF clientlib in its current state is broken. |
||||||
| Additional Information | |||||||
| Tags | No tags attached. | ||||||
| GIT commit id | 3ab1c686d6aa3a5e98b0c690da62f1c42566d837 | ||||||
| Has patch | Yes, needs review | ||||||
| Attached Files |
|
||||||
|
|
|||||||
Relationships [ Relation Graph ]
[ Dependency Graph ]
|
|
| Mantis 1.1.6[^] Copyright © 2000 - 2008 Mantis Group |