Menu

#2280 [patch] Fix a LongTerm3 backport (C string vs std::string mixup in UniqueStringSet)

Bug
closed-rejected
nobody
scintilla (608)
5
2021-12-06
2021-08-30
No

Hi there! I have a hopefully simple patch which fixes a mistake in the LongTerm3 branch.
Background:

  • The backport with a mistake is revision 6c453822904a. It replaces the FontNames::Save line if (strcmp(nm.get(), name) == 0) { with the UniqueStringSet::Save line if (text == us.get()) {.
  • There's no problem on the default branch, where (since rev a70a4ee51448) a C++17 std::string_view is used and the "==" is a string comparison.
  • My patch changes the "==" back to a strcmp in keeping with the branch's pre-C++14 requirements.
  • I don't fully understand the consequences, but I looked into this after a friend reported Geany 1.36 is far slower to start up than Geany 1.35 when huge numbers of files are supposed to open at startup. I've confirmed that this patch fixes the Geany editor's speed regression.

Thanks for looking, have a nice day.

1 Attachments

Discussion

  • Neil Hodgson

    Neil Hodgson - 2021-09-01

    LongTerm3 has been unmaintained for almost a year since Mitchell Foral moved to Scintilla 5.x.

    If this patch is a one-off then I can commit it but I really don't want to maintain LongTerm3.

    If you, or someone else, is willing then they can become the LongTerm3 maintainer with commit privileges.

     
    • Justin Blanchard

      Thanks for letting me know that! I see the Geany team plans to adopt 5.x imminently, and I'm not aware of other projects downstream of LongTerm3. I won't stand in the way of Scintilla moving on. :)

       
  • Neil Hodgson

    Neil Hodgson - 2021-11-12
    • labels: --> scintilla
    • status: open --> open-rejected
     
  • Neil Hodgson

    Neil Hodgson - 2021-11-12

    Rejecting this as LongTerm3 in unmaintained.

     
  • Neil Hodgson

    Neil Hodgson - 2021-12-06
    • status: open-rejected --> closed-rejected
     

Log in to post a comment.