View Issue Details

IDProjectCategoryView StatusLast Update
0020288LazarusIDEpublic2011-09-18 21:47
ReporterAntonAssigned ToMartin Friebe 
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Product Version0.9.31 (SVN)Product Build 
Target VersionFixed in Version0.9.31 (SVN) 
Summary0020288: Backspace works incorectly during incremental search of unicode text
Descriptionide/sourceeditor.pp near 2863:
...
    ecDeleteLastChar:
      begin
        FSourceNoteBook.IncrementalSearchStr:=
          LeftStr(FSourceNoteBook.IncrementalSearchStr,
            length(FSourceNoteBook.IncrementalSearchStr)-1);
        Command:=ecNone;
      end;
...
but unicode char length <> 1.
As solution:
        FSourceNoteBook.IncrementalSearchStr:=
          UTF8Copy(FSourceNoteBook.IncrementalSearchStr,1,
            UTF8Length(FSourceNoteBook.IncrementalSearchStr)-1);

Is "sourceeditor.lrs" still used?
TagsNo tags attached.
Fixed in Revision32409
LazTarget0.99.0
Widgetset
Attached Files

Activities

Martin Friebe

2011-09-18 19:51

manager   ~0051992

Sorry, didn't see the patch at first.

How did you stumble on it?

While the bug is there, I am unable to make it happen. Yes in the debugger, i can watch the string going wrong => but I can also see, that it get's correct later (by accident, but always). Strange

Martin Friebe

2011-09-18 20:08

manager   ~0051993

Please test and close if ok.

I went for a different approach, using UTF8FindNearestCharStart

Anton

2011-09-18 21:47

reporter   ~0051998

The issue becomes more evident after the patch from 0018842 that I use.
Now it works correctly, thank you.

Issue History

Date Modified Username Field Change
2011-09-18 19:23 Anton New Issue
2011-09-18 19:31 Martin Friebe Status new => assigned
2011-09-18 19:31 Martin Friebe Assigned To => Martin Friebe
2011-09-18 19:32 Martin Friebe Project Patches => Lazarus
2011-09-18 19:51 Martin Friebe Note Added: 0051992
2011-09-18 20:08 Martin Friebe Fixed in Revision => 32409
2011-09-18 20:08 Martin Friebe LazTarget => 0.99.0
2011-09-18 20:08 Martin Friebe Status assigned => resolved
2011-09-18 20:08 Martin Friebe Fixed in Version => 0.9.31 (SVN)
2011-09-18 20:08 Martin Friebe Resolution open => fixed
2011-09-18 20:08 Martin Friebe Note Added: 0051993
2011-09-18 20:08 Martin Friebe Target Version => 0.99.0
2011-09-18 21:47 Anton Status resolved => closed
2011-09-18 21:47 Anton Note Added: 0051998