On 08/12/2015 04:01 PM, Holger Hoffstätte wrote: > > It gets weirder.. > > On Wed, 12 Aug 2015 21:43:08 +0000, Holger Hoffstätte wrote: > >> On startup it can somehow no longer properly locate the ~/.pan2 >> directory and always decides to create an empty newsrc-1 in my ~. > > Actually it creates the newsrc-1 in the $CWD. Apparently the newly built > binary (using it right now) works fine when I start it in the ~/.pan2 > directory, where it can find the old newsrc and all settings. Why the old > version works without any $CWD (from an xfce launcher) remains a mystery > for now. > > Suggestions welcome..
From a quick peek at the source code I don't see how it could be a problem with libstdc++. Instead I'd look for problems with glib. Specifically g_get_home_dir() and g_build_filename(). Maybe your pan linked to the wrong version of glib somehow? Or it could be a faulty assumption that the char* returned remains valid. Most places in the code assign to a std::string which makes a copy and is great. Other places assign to a char* and I am not sure that the pointed-to value remains valid. I checked and the glib docs say g_getenv()'s value remains valid only until the next call to a list of functions. A change in how GCC compiles could be responsible for causing a temporary pointer to get overwritten which didn't happen with an older compiler. Or maybe you did something like export PAN_HOME without setting it. Because I see in the code that PAN_HOME overrides everything else, and it doesn't seem to check it for being blank. _______________________________________________ Pan-users mailing list Pan-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/pan-users