[Lazarus] Edti's password char with bug?

Vincent Snijders vincent.snijders at gmail.com
Wed Aug 10 21:05:19 CEST 2011


2011/8/10 Gerard Visent <gerardusmercator at gmail.com>:
> class procedure TGtk2WSCustomEdit.SetPasswordChar(
>   const ACustomEdit: TCustomEdit; NewChar: char);
> var
>   PWChar: Integer;
>   Entry: PGtkEntry;
> begin
>   if not WSCheckHandleAllocated(ACustomEdit, 'SetPasswordChar') then
>     Exit;
>   Entry := PGtkEntry(ACustomEdit.Handle);
>   if ACustomEdit.EchoMode=emNone then
>     PWChar:=0
>   else begin
>     PWChar:=ord(ACustomEdit.PasswordChar);
>     if (PWChar<192) or (PWChar=ord('*')) then
>       PWChar:=9679;
>   end;
>   gtk_entry_set_invisible_char(Entry,PWChar);
> end;
>
> Commenting the following lines
>
>   if (PWChar<192) or (PWChar=ord('*')) then
>       PWChar:=9679;

Maybe Mattias remembers:
http://svn.freepascal.org/cgi-bin/viewvc.cgi/trunk/lcl/interfaces/gtk2/gtk2wsstdctrls.pp?root=lazarus&r1=11027&r2=11028


You see this char ( ● ,
http://www.unicodemap.org/details/0x25CF/index.html) a lot in sample
code, but I see no reason why to replace all (PWChar<192). I can
imagine the replacement is done for *, to make the control look more
similar to other password controls.

Vincent




More information about the Lazarus mailing list