-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Please note that *only* the OpenDDR C# version downloadable from
GitHub is affected.
I do not think an easy fix is possible, the whole thing worked -- and
still works when confined to a .Net 3.5 platform -- because it relies
on something that should not have worked in the 1st place.

The problem is that the code relies on changing the collection
(OrderedDictionary) over which it's enumerating.

Others have made this mistake and got bitten as well :

https://stackoverflow.com/questions/5159289/ordereddictionary-breaking-change-in-net-4

It's entirely illegal to modify--in any way--a collection over which
you're enumerating.

With the DeviceMap code working as it does in all versions and
languages, for us, the issue is not terribly relevant.

For those wishing to use the OpenDDR code on .Net is very relevant :
unless they stick to 3.5 where ever and when ever they use it, it
won't work.
For me it's just nuisance : when comparing DeviceMap to OpenDDR in
tests I have to switch packages, ie : can't run tests from one test app.

Also, it shows me that the author was in a Java-frame-of-mind when
doing the C# and didn't see she/he was doing something quite illegal
in .Net [and logic in general] and was fortunate to get away with it
- -- unaware of the big 'sin' committed -- due to a bug in .Net ;-)

esjr
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.8 (MingW32)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQEcBAEBAgAGBQJS2R5dAAoJEOxywXcFLKYcIn8IAJ9JbD/itPKG6MwqFYh5mQyf
d1An+m/ArNkOYeR83TkhApL/kP1LJJYuQ2E1jWS8wrKXxxiaCQPgH+2MbN/9lBMa
AqFrdTLBbBAGBtlrJUjAbxwbQramr5PvhPN90WBQgVvGwnhdh1LMqmjTRUzBhI1v
oBgMtN/bzJfLRnl5c2FsWkRQjKy4uZqAP+SK3AiBGmRmtXu14g8FxEhtDWoEDmJc
dpkxXUX3sQk6DePBoUFUZ8KKgrAahoLQZrLupl9D40tiD4sTCKWn6Y0JmGM3SxRA
L4zOzP8f1hLARbcAIVx71dQMSvCjzFfefDzN/DNKRTo0jDkI6zmHN8XScjlIAH4=
=45lM
-----END PGP SIGNATURE-----

Reply via email to