Quantcast
Channel: Questions in topic: "crash"
Viewing all articles
Browse latest Browse all 2383

Unhandled exception crashes the game : A heap has been corrupted

$
0
0
Hello, I make a Windows game that uses **named pipes** to communicate with the outside. I can successfully receive data, but **the game keeps crashing when I send ~5 messages** (yes, 4 is fine but the fifth one makes everything crash, even if messages are identical.. I don't know why). What happens is a small delay of a second and then the game just closes itself, with no information. **I tried :** - Running a "development build" standalone, but the error is not catched into the output log. - Different ways of sending my message (ASync, normal, by disposing NamedPipeClientStream ...) unsuccessfull. - Running from the Editor. In this case I can use Visual Studio to debug and I get the error > "Unhandled exception at ......> (ntdll.dll) in Unity.exe: .....: A> heap has been corrupted (parameters:> ....)." I have no idea what is happening here. My hypothesis is that unity's System.IO.Pipes is broken. I would like to find a workaround or if possible to ignore this error. I am already using try-catch when sending messages and it seems like it does nothing. When running from the editor and debugging with VS, I was able to ignore the error and continue the execution. Maybe I can do that to automatically ? Here is the send method I use now : public void send(PipeMessage message) { try { pipeClient = new NamedPipeClientStream(".", sendPipeName, PipeDirection.Out, PipeOptions.Asynchronous); pipeClient.Connect(timeOut); pipeClient.BeginWrite(message.bytes, 0, message.bytes.Length, aSyncSend, pipeClient); } catch (Exception e) { } } private void aSyncSend(IAsyncResult iar) { try { NamedPipeClientStream sApipeClient = (NamedPipeClientStream)iar.AsyncState; sApipeClient.EndWrite(iar); sApipeClient.Flush(); } catch (Exception e) { } }

Viewing all articles
Browse latest Browse all 2383

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>