<div dir="ltr">Dear all,<div>TStreamReader.ReadLine seems to fail under specific circumstances.<br>I created a test to easily reproduce the problem.<br>The test makes use of a TStream that behaves in a weird, but formally correct way. I created it based on a real experience with the StdIn that I was able to reproduce thanks to pre-existing logging.<br>I suggest you use the test on Windows otherwise I'm not sure you'll be able to reproduce the problem.<br><br>I believe the bug can be fixed by updating VPByte right after FillBuffer is called:<br><br>      [...]<br>      FillBuffer;<br>      VPByte := @FBuffer[FBufferPosition]; //bugfix<br>      VPosition := FBufferPosition;<br>      [...]<br><br>Tested with Lazarus 2.0.10 FPC 3.2.0 on Win64<br><div><br></div><div>Posted on lazarus forum at:</div><div><a href="https://forum.lazarus.freepascal.org/index.php?topic=54033.msg400820#msg400820">https://forum.lazarus.freepascal.org/index.php?topic=54033.msg400820#msg400820</a><br></div></div><div><br></div><div>Is it a bug or am I missing something?</div><div><br></div><div>Kind regards,</div><div>Andrea</div></div>