View Single Post

   
  #2 (permalink)  
Old 04-18-2008, 08:31 AM
Dave Page
 
Posts: n/a
Default Re: Character miscount

Erwin Brandstetter wrote:
> Hi developers! Hi Dave!
>
> Testing pgAdmin III v1.6.3 rev: 6112, client Win XP, host: Debian Sarge,
> PG 8.1.9.
>
> A pretty useful feature in the SQL query dialogue displays data about
> the current position of the cursor.
>
> Ln 168 Col 30 Ch 7596
>
> "Ch" supposably stands for "Characters".


Yes.

> However, it is not the correct character count, but (supposably) the
> byte-length of the string. Multibyte-characters (like German umlauts ö ä
> ü) mess with the count. I stumbled across this while trying hard to fix
> a functions that wouldn't return the right length of a string. Turns
> out, the function was right, pgAdmin was wrong.


Argh - it's wxSTC::GetCurrentPos() returning the wrong value. I imagine
it's related to the previous bug which I logged with the wx guys:
http://sourceforge.net/tracker/index...&at id=109863

> I have reported appearances of this phenomenon in various places (and
> Dave has fixed them) in the past. Maybe you can identify a typical
> function or word to look for in all of the source code to find other
> instances of the beast? (Just a thought.)


The workaround used previously involved wxSTC::SetSelection(), and
basically not using it any more. Unfortunately there is no similar fix
that I can think of for this case. I'll add some info on the issue to
the wx bug and note it in our bugs file. I'm not sure there's much else
I can do I'm afraid :-(

Thanks for the report though.

Regards, Dave.

---------------------------(end of broadcast)---------------------------
TIP 7: You can help support the PostgreSQL project by donating at

http://www.postgresql.org/about/donate

Reply With Quote