[Banshee-List] For those who have had iPod detection issues...



We've been looking into the detection issues for iPods that are present
in Banshee 0.11.1+. I now hope the issues are all resolved in the very
latest CVS:

2006-11-27  Aaron Bockover  <abock gnome org>

    * src/Banshee.Base/Dap/DapCore.cs: Work with the new PropertyModified
    event args, use a registration wait list to make sure the same device
    doesn't get multiple event handler registrations; this _should_ finally
    fix all the iPod detection problems - the root of which was outdated
    and incorrect HAL documentation

    * hal-sharp/Device.cs: Wrap the proper delegate signature of
    Hal.Device.PropertyModified which is ia(sbb), not sbb like the outdated
    HAL specification implies. Thanks to Sebastian Dr�and Alp Toker for
    looking into the issue.

The problem (we hope) is essentially that in 0.11.1 we moved to a fully
managed DBus client implementation. Along with that was the removal of
native HAL support (through binding of libhal) and the addition of
DBus-based HAL support in fully managed code. When I implemented the
managed HAL layer in Banshee, I was working under the assumption that
the HAL specification document was up to date. This apparently is not
the case:

http://gitweb.freedesktop.org/?p=hal.git;a=blob_plain;f=doc/spec/hal-spec.html

While the spec says HAL 0.5.9 (as of the date of this mail), the
signature for the Device.PropertyModified signal is noted as (sbb)
(string, bool, bool). In reality (at least since HAL 0.5.6, which is
almost a year old), the signature is ia(sbb). (integer, array of
(string, bool, bool)). 

Thus, every time this signal was raised, there was either data
corruption or a crash depending on the endianness of the machine.

To those having detection issues, please test the latest CVS and let us
know if things are any better. 

Thanks,
Aaron





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