No, it's not a bug. It's a dirty trick to reduce memory usage.
For filenames in English, their real names and their UTF-8 display names are completely the same. So there is no need to store two copies of the same string.
That's the purpose of this hack, to share real base names and display names whenever possible. This is not a bug, but I did not write good comments for this previously. :-(
On Tue, May 22, 2012 at 5:24 AM, Andrej N. Gritsenko <email@example.com>
After some thinking I've found that first place is handled in appropriate
>I think the problem is in two questionable places:
> if( strcmp(tmp, fi->path->name) == 0 )
> fi->disp_name = fi->path->name;
> fi->disp_name = g_strdup(tmp);
> if(src->disp_name == src->path->name)
> fi->disp_name = src->disp_name;
> fi->disp_name = g_strdup(src->disp_name);
places but second cannot be. I'll send patch to tracker then.