Version: (using KDE 4.2.0) Installed from: Fedora RPMs I have had recently lot of problems with cookies. For some domains I frequently visit, a cookie policy is asked by konqueror/whateverlib and I keep answering them. Sometimes, I'm not sure, is that due false answers or non-working cookie jar, I have problems to use sessions since cookies are not working. A screenshot from manager: http://tuju.fi/kde/kde-4.2-cookie.problem-20090208.png IMO that shouldn't even be possible since kde.org is already there once, right?
I had a similar problem with respect to unreliable domain-specific policies. I tracked it down to this fact: when the cookie settings module reads and then rewrites the config file (kcookiejarrc) it uses the QUrl::fromAce() and QUrl::toAce() functions (decoding/encoding of localized domain names), but this has unintended consequence: it produces .kde.org -> fromACE() -> kde.org -> toACE() -> kde.org the dot is lost and the policy stops working as intended. This happens in Qt-4.4, then in Qt-4.5 fromAce()/toAce() were rewritten in a cleaner way and the problem stops. If you have Qt-4.4, I suggest to clean all cookies and policies and give Qt-4.5 a try. Note that this behaviour could in part explain other bugs, such as bug 179968, bug 182806, bug 184973.
Gregorio: thanks for this excellent analysis. Indeed fromAce/toAce was buggy in 4.4 and fixed in 4.5, I can confirm this (unittest committed in kurltest.cpp). Unfortunately this doesn't explain all the other bugs, I just had the loss of cookie policies with Qt-4.5.
FWIW, Qt 4.5 is coming soon to Fedora 9 and 10. (The plan is to push it out together with the KDE 4.2.2 update.)
SVN commit 944701 by dfaure: Workaround the Qt-4.4 fromAce/toAce bug for the kdelibs-4.2.2 release. I thought this affected the cookie handling, but in fact it doesn't, it only affects the configuration module :( CCBUG: 183720 M +22 -4 kcookiespolicies.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=944701
For the record: in 4.6 fromAce/toAce again doesn't accept leading dots, by design. So the "workaround" is actually the long-term solution now ;)