Example attached....please read that: http://forums.codeblocks.org/index.php?topic=3186.0 (http://forums.codeblocks.org/index.php?topic=3186.0) topic. It came out of your first post. Please try what happens if you set the file encoding to UTF-8 (Settings -> Editor -> General settings -> "Default Encoding when opening files"...?!
There is still problem with gdb output parsing in watches window.
Example attached.
> output *ptr
{char_var = -83 'ar = 123}
OK, I 've found the cause in sdk/pipedprocess.cpp. The text stream we 're reading there, is using UTF8 conversion which is clearly the problem here.I couldn't stand to point to: http://forums.codeblocks.org/index.php?topic=2910.msg22996#msg22996 (http://forums.codeblocks.org/index.php?topic=2910.msg22996#msg22996). It seems I haven't been so much wrong there... suprisingly... ;-)
Also, Morten, please check your test file again and tell us if it works now...Fantastic! This fixes the issue with "Hähä"!!! :D :D :D ;-)
Test compiling too. We wouldn't want to break what already works ;)Hey.
--- src/sdk/pipedprocess_old.cpp 2006-05-25 11:59:27.000000000 +0200
+++ src/sdk/pipedprocess.cpp 2006-05-25 12:02:06.000000000 +0200
@@ -174,7 +174,11 @@ bool PipedProcess::HasInput()
if (IsErrorAvailable())
{
- cbTextInputStream serr(*GetErrorStream(), wxT(" \t"), wxConvLocal);
+ #if wxUSE_UNICODE
+ cbTextInputStream serr(*GetInputStream(), wxT(" \t"), wxConvLocal);
+ #else
+ cbTextInputStream serr(*GetErrorStream());
+ #endif
wxString msg;
msg << serr.ReadLine();
@@ -189,7 +193,11 @@ bool PipedProcess::HasInput()
if (IsInputAvailable())
{
+ #if wxUSE_UNICODE
cbTextInputStream sout(*GetInputStream(), wxT(" \t"), wxConvLocal);
+ #else
+ cbTextInputStream sout(*GetErrorStream());
+ #endif
wxString msg;
msg << sout.ReadLine();
Also, Morten, please check your test file again and tell us if it works now...I'm sorry to say this, but while working on that topic I found another two debugger issues that I have posted in a new thread because they are not related to this one. Please have a look here:
Also, Morten, please check your test file again and tell us if it works now...I'm sorry to say this, but while working on that topic I found another two debugger issues that I have posted in a new thread because they are not related to this one. Please have a look here:
http://forums.codeblocks.org/index.php?topic=3197.0 (http://forums.codeblocks.org/index.php?topic=3197.0). :( :( :(
With best regards, Morten.
Test compiling too. We wouldn't want to break what already works ;)Hey.
I've updated codeblocks to rev2502 right now and noticed that a problem occurred compiling the new pipedprocess.cpp.
The compiler complained that no proper constructor was found.
After checking the file, I found out that you do not deal the case if there's no wx-Unicode support.
So i discover the rest of the file and write a short patch for it. It there's no support the "old" constructor will be invoked.
Code> output *ptr
{char_var = -83 'ar = 123}
EDIT: Actually, it's the way gdb's output is converted to wxString. Let me look into this...