I found some issue with FEZ Cerberus.
- I can’t update to 4.3 a board that report itself as “version 1.1”. The other board reports “version 1.2” and works fine.
- I can’t use HttpListner class on 4.3. It fails after exactly 3 reply. Than it fail each subsequent reply. I get an exception in System.Http.dll (System.NullReferenceException).
The same code works on the other boards (G400, Cobra II, Spider). The error (see image) is in library code. The error exception happens somewhare between context close and the call to GetContext().
...
while (true)
{
// wait for call from client:
try
{
if (listener == null)
{
listener = new HttpListener("http", 80);
listener.MaximumResponseHeadersLength = 1024;
listener.Start();
Thread.Sleep(4000);
DebugPrint.Print("HttpListener created....");
}
wctx = listener.GetContext();
// got call:
if (wctx == null)
continue;
if (wctx.Request == null)
continue;
}
catch (SocketException sex)
{
DebugPrint.Print("EXCEPTION:" + sex.Message + "\r\nHttpListener stopped, cleared then restart it ... !");
continue;
}
// Process request
//ProcessHttpRequest(wctx); // threaded version
try
{
//HttpContextServiceThread(wctx); // single version (don't use!)
DebugPrint.Print("URL: " + wctx.Request.RawUrl);
}
catch (Exception ex)
{
DebugPrint.Print("Exception:" + ex.Message);
}
wctx.Close();
wctx = null;
// Exception happen after this line but before returning on GetContex() call
}
- TCP Sockets work ONLY if cerberus is in VS debug mode
Is there someone else that is facing these problems ?