Notice (2018-05-24): bugzilla.xamarin.com is now in
Please join us on
Visual Studio Developer Community and in the
Mono organizations on
GitHub to continue tracking issues. Bugzilla will remain
available for reference in read-only mode. We will continue to work
on open Bugzilla bugs, copy them to the new locations
as needed for follow-up, and add the new items under Related
Our sincere thanks to everyone who has contributed on this bug
tracker over the years. Thanks also for your understanding as we
make these adjustments and improvements for the future.
Please create a new report for Bug 22262 on
GitHub or Developer Community if you have new
information to add and do not yet see a matching new report.
If the latest results still closely match this report, you can use the
In special cases on GitHub you might also want the comments:
GitHub Markdown with public comments
Created attachment 7756 [details]
Example of console not echoing but of text being "read".
I am using the SqlDb# library (https://github.com/ruffin--/SqlDbSharp) and testing its ISQL client in a console application run from Xamarin Studio. ReadLine() calls are not echoing what the user types as they type it, though the input is registering on <return>.
This is in Xamarin Studio 5.2.1 (Build 1) on Mac OS X 10.9.4.
I think it's Mono v 3.6.0, though that's not an option in Bugzilla right now. Here's what I get from `mono --version`:
Mono JIT compiler version 3.6.0 ((no/f540f8a Tue Jul 15 19:37:27 EDT 2014)
Initial report of the bug on the forums here:
Michael Hutchinson suggested I should file the bug here, in Class Libraries.
I'm going to repeat some (essentially all) of that post's information here in the bug report.
I have a reasonably complex command line project that I started in Visual Studio Express 2012 on Windows, and have imported to Xamarin Studio 5 on my Mac. I've adjusted a few things -- I ran into "not built in active configuration" issue initially, and had to set up Run on external console. Otherwise it is unchanged.
Note that the most recent version of the SqlDb# library includes a dependency, though when I initially found this bug and reported it, I made a quick stash here that does not:
To be doubly clear, I do have "Run on external console" checked. I am seeing Console Writes, but not the echo for ReadLine().
So the ISQL project runs fine, but when I enter in characters after a Console.ReadLine() call, they aren't echoed. They are read -- the app runs, and it even echoes what I've typed after I'm "done" -- sometimes. Here's the code in the immediate context; nothing squirrelly:
strInput = Console.ReadLine();
strCmd += strInput + " ";
Once I'm out of the loop, occasionally, if there's no exception thrown while I process strCmd, I eventually get to see the echo, but only after I get a few lines further down into the app.
I can create a simplest case console app in Xamarin Studio and have it behave as expected.
public static void Main (string args)
Console.WriteLine ("Enter something.");
string somethingRead = Console.ReadLine ();
That does fine. It echoes everything I type as I type, just as I'd expect the larger, imported, Visual Studio-first app to work.
Fwiw, the text I entered is echoed once I get past line 190 in Isql.cs, object objResult = parser.executeCommand(strCmd);
If you want to recreate exactly what I'm using when the error occurs, it's from here, pushed to a stashes branch: https://github.com/ruffin--/SqlDbSharp/archive/stashiges.zip
Note that the "database engine" is pretty (okay, insanely) hacky. You should be able to run the following test SQL, however:
=== BEGIN TEST COMMANDS BELOW ===
CREATE TABLE TestTable (
ID INTEGER (4) AUTOINCREMENT,
CITY CHAR (10));
INSERT INTO TestTable (CITY) VALUES ('New York');
INSERT INTO TestTable (CITY) VALUES ('Boston');
INSERT INTO TestTable (CITY) VALUES ('Fuquay');
SELECT * FROM TestTable;
=== END OF TEST COMMANDS; DO NOT INCLUDE THIS LINE ===
Note that the ending line with a period by itself is required. And also note that the commands are read and work (see screenshot invisibleCommands.png to see the results of pasting in the above test SQL). Note that the screenshot is in Terminal.app. I changed the default colors, but am not using another term window provider.
Please provide a test case that shows the bad behavior.
Your simple example, as you mentioned, works fine.
You should be able to follow the directions in the bug to use that library and reproduce it. I've just done it.
There's a stash here:
Run that, and you should see the issue.