Bug #7188 2006-04-19 12:40

skirby

Problem with the debugger and extended characters

Hello,

Here is a simple example which show you a bug with the debugger

You can find the project here:

http://www.badongo.com/file/498569

Debug the program.

You should have a screen like that

http://img19.imageshack.us/my.php?image=debuggerproblem18af.jpg

Now if you trace the following instruction: strcpy(sStr, "azéerty");

All buttons of the debugger toolbar becomes disabled.

see http://img150.imageshack.us/my.php?image=debuggerproblem20ix.jpg

I really hope you could fix that problem.

Thanks and have a nice day

Category
Application::WrongBehaviour
Group
 
Status
Closed
Close date
2006-05-25 11:32
Assigned to
 
mortenmacfly 2006-04-26 06:22

This also applied for e.g. German umlauts. Here is some additional information:

This applies to std::string as well as char*.

When the event DebuggerGDB::OnGDBOutput is fired from the piped process the event.GetString() already holds the wrong string. So it must be related to the way how stdout and stcerr are obtained / converted in PipedProcess. I''ve inspected cbTextInputStream::ReadLine() and cbTextInputStream::NextChar() which could be the cause. Unfortunately this is difficult to debug - so any help is appreciated.

Edit: That's really strange... if I inspect the memory of the string using C::B it clearly shows the "right stuff", passing a "display mystring.c_str()" to gdb seems to work, too. Hence it could be the way how STL strings are parsed in the debugger script (gdb_types.script)...?! Anybody else working on that can help?!

mandrav 2006-05-25 11:32

This bug has been already fixed in HEAD.

Thank you.