I gave this PR a brief spin. Linux and Windows, GTK+2 and GTK+3, a few realistic and contrived examples.


Bug: on Windows, if one of the pathnames to be rendered in the popup is too long, it is considered empty. This happens before the removal of common prefixes, so it looks like this:

geany-goto-popup-cut

This first line “: 1” actually refers to a very long pathname. If I click it, Geany successfully jumps to the symbol in that pathname, but also prints this to the console:

Geany: utils_tidy_path: assertion 'g_path_is_absolute(filename)' failed

So what is a “very long pathname”? Here is an example:

C:\Users\Vasiliy\Downloads\Первая папка\В ней много интересного\Приколов не счесть\Всякое разное 1234567890\Ещё больше 1234567890\Последний уровень вло\Ор выше гор.c

As you can see, it’s 165 characters long, but in UTF-8 it would be 261 bytes long. Now this is the minimum length where the problem happens. If I remove any 1 Cyrillic or any 2 Latin characters from anywhere in this pathname, it is rendered as expected.

I could not reproduce this problem with ASCII-only pathnames, probably because Windows prevented me from creating a pathname longer than 255 characters.

I could not reproduce this problem on Linux.


When common substrings are ellipsized, Geany now prints messages to the console, like this:

p 0 Вторая папка/.../Тест.c
p 1 Первая папка/.../Тест.c

I think this should be either removed or made more understandable.


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.