Merge changes from mono-zeroconf and Fedora
Bug #458687 reported by
Michel Lind
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
NDesk D-Bus |
New
|
Undecided
|
Unassigned | ||
mono-zeroconf (Fedora) |
Won't Fix
|
Medium
|
|||
ndesk-dbus (Fedora) |
Won't Fix
|
High
|
Bug Description
mono-zeroconf (used by Banshee) still ships its own copy of NDesk.DBus, has a lot of modifications still not present in the Git source.
Could a new stable release be issued? The mono-zeroconf code does not compile against 0.6.1a, and not against the latest Git code either, due to some changes it made to Connection.cs
Also, Fedora carries a patch against ndesk-dbus that also modifies the public interface. The patch, as currently shipped, has some spelling errors -- I'll attach both a diff for the mono-zeroconf changes and the Fedora patch. If they are applied, I guess the API number will have to be bumped.
Changed in mono-zeroconf (Fedora): | |
status: | Unknown → Confirmed |
Changed in ndesk-dbus (Fedora): | |
status: | Unknown → Fix Committed |
Changed in ndesk-dbus (Fedora): | |
importance: | Unknown → High |
status: | Fix Committed → Won't Fix |
Changed in mono-zeroconf (Fedora): | |
importance: | Unknown → Medium |
status: | Confirmed → Won't Fix |
To post a comment you must log in.
Created attachment 345876
Testcase
Description of problem:
There is 2 bug in this package
1 - related with the mapping of dbus datatype a byte align in the buffer
2 - related with the reading from the socket
You can see these bugs in action using sugar-datastore that use DBus to do the search, for example.
I attach a tastcase that show this behaviour.
Here the command to compile it.
gmcs datastore-test.cs `pkg-config --libs ndesk-dbus-1.0` `pkg-config glib-1. 0`
--libs ndesk-dbus-
Version-Release number of selected component (if applicable):
Any version
How reproducible:
Steps to Reproduce:
1. Logon using sugar interface
2. Start an activity
3. Start the terminal activity
4. From the terminal activity start the testing application.
Now can see one of two bug.
If the datastore is small you got this error:
Unhandled Exception: System.Exception: Read non-zero byte at position 4 while expecting padding MessageReader. ReadPad (Int32 alignment) [0x00000] MessageReader. ReadArray (System.Type elemType) [0x00000] MessageReader. ReadValue (System.Type type) [0x00000] MessageReader. ReadStruct (System.Type type) [0x00000] MessageReader. ReadValue (System.Type type) [0x00000] MessageHelper. GetDynamicValue s (NDesk.DBus.Message msg, System.Type[] types) [0x00000] BusObject. SendMethodCall (System.String iface, System.String member, System.String inSigStr, NDesk.DBus. MessageWriter writer, System.Type retType, System.Exception& exception) [0x00000] aceProxy. find (IDictionary`2 properties, System.String[] ) [0x00000]
at NDesk.DBus.
at NDesk.DBus.
at NDesk.DBus.
at NDesk.DBus.
at NDesk.DBus.
at NDesk.DBus.
at NDesk.DBus.
at DataStoreInterf
at datastore_test.Main (System.String[] argv) [0x00000]
If the datastore is big you got this other error:
Unhandled Exception: System.Exception: Message body length mismatch: 15800 of expected 3210520 Connection. ReadMessage () [0x00000] PendingCall. get_Reply () [0x00000] Connection. SendWithReplyAn dBlock (NDesk.DBus.Message msg) [0x00000] BusObject. SendMethodCall (System.String iface, System.String member, System.String inSigStr, NDesk.DBus. MessageWriter writer, System.Type retType, System.Exception& exception) [0x00000] aceProxy. find (IDictionary`2 properties, System.String[] ) [0x00000]
at NDesk.DBus.
at NDesk.DBus.
at NDesk.DBus.
at NDesk.DBus.
at DataStoreInterf
at datastore_test.Main (System.String[] argv) [0x00000]
You can find the new spec file (I not change the log yet) here: sugar-sharp. googlecode. com/files/ ndesk-dbus- glib.spec sugar-sharp. googlecode. com/files/ ndesk-dbus. spec
http://
http://