Closed hoeche closed 5 years ago
I've pused a fix in ed875ce521712a3c9cb0f8002612c033afec7284
Can you verify if this works as intended for you as well? If so, I'll put out a new 4.31 release.
For reference, I can now run the program below without errors, where it crashed before this fix:
using System;
using Razorvine.Pyro;
namespace TestDotnetPyrolitePickle
{
class Program
{
static void Main(string[] args)
{
Config.SERIALIZER = Config.SerializerType.pickle;
var ns = NameServerProxy.locateNS(null, 0);
Console.WriteLine(ns);
foreach (var (objectname, uri) in ns.list(null, null))
{
Console.WriteLine(objectname + " -> " +uri);
}
ns.close();
}
}
}
It works perfect! I will do more intensive testing within the next weeks. Thank you very much!
Fantastic . I'll release a new version shortly.
Be advised that using the pickle serializer is better avoided. (security issues, and support for it is gone in the next Pyro version Pyro5)
4.31 pushed to nuget.org
By using the pickle serializer I get following exception when doing:
When using the serpent serializer it works fine. I digged into the code and it seems C# has problems casting Hashtable to IDictionary<object, object>. When I create a Dictionary<object, object> and copy all elements from the Hashtable into the dictionary, then it also works with pickle.