rpms/kdelibs/devel kdelibs-4.1.0-kcookiejar-crash.patch, 1.1, 1.2 kdelibs.spec, 1.362, 1.363

Kevin Kofler (kkofler) fedora-extras-commits at redhat.com
Sun Aug 10 16:52:51 UTC 2008


Author: kkofler

Update of /cvs/pkgs/rpms/kdelibs/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv9321/devel

Modified Files:
	kdelibs-4.1.0-kcookiejar-crash.patch kdelibs.spec 
Log Message:
Use working version of kcookiejar fix.

kdelibs-4.1.0-kcookiejar-crash.patch:

Index: kdelibs-4.1.0-kcookiejar-crash.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kdelibs/devel/kdelibs-4.1.0-kcookiejar-crash.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- kdelibs-4.1.0-kcookiejar-crash.patch	10 Aug 2008 15:59:59 -0000	1.1
+++ kdelibs-4.1.0-kcookiejar-crash.patch	10 Aug 2008 16:52:21 -0000	1.2
@@ -1,12 +1,68 @@
 Index: kioslave/http/kcookiejar/kcookiejar.cpp
 ===================================================================
---- kioslave/http/kcookiejar/kcookiejar.cpp	(revision 844311)
-+++ kioslave/http/kcookiejar/kcookiejar.cpp	(working copy)
-@@ -1367,6 +1367,7 @@ bool KCookieJar::loadCookies(const QStri
+--- kioslave/http/kcookiejar/kcookiejar.cpp	(revision 844829)
++++ kioslave/http/kcookiejar/kcookiejar.cpp	(revision 844830)
+@@ -1366,16 +1366,18 @@
+             if ((line[0] == '#') || (line[0] == '['))
                  continue;
  
-             const char *host( parseField(line) );
-+            if (!host) continue;
-             const char *domain( parseField(line) );
-             const char *path( parseField(line) );
-             const char *expStr( parseField(line) );
+-            const char *host( parseField(line) );
+-            const char *domain( parseField(line) );
+-            const char *path( parseField(line) );
+-            const char *expStr( parseField(line) );
+-            if (!expStr) continue;
+-            int expDate  = (time_t) strtoul(expStr, 0, 10);
+-            const char *verStr( parseField(line) );
+-            if (!verStr) continue;
+-            int protVer  = (time_t) strtoul(verStr, 0, 10);
+-            const char *name( parseField(line) );
++            const QString host = QString::fromLatin1( parseField(line) );
++            const QString domain = QString::fromLatin1( parseField(line) );
++            if (host.isEmpty() && domain.isEmpty())
++                continue;
++            const QString path = QString::fromLatin1( parseField(line) );
++            const QString expStr = QString::fromLatin1( parseField(line) );
++            if (expStr.isEmpty()) continue;
++            const int expDate = expStr.toInt();
++            const QString verStr = QString::fromLatin1( parseField(line) );
++            if (verStr.isEmpty()) continue;
++            int protVer  = verStr.toInt();
++            QString name = QString::fromLatin1( parseField(line) );
+             bool keepQuotes = false;
+             bool secure = false;
+             bool httpOnly = false;
+@@ -1412,11 +1414,11 @@
+             if ((expDate == 0) || (expDate < curTime))
+                 continue;
+ 
+-            KHttpCookie cookie(QString::fromLatin1(host),
+-                               QString::fromLatin1(domain),
+-                               QString::fromLatin1(path),
+-                               QString::fromLatin1(name),
+-                               QString::fromLatin1(value),
++            KHttpCookie cookie(host,
++                               domain,
++                               path,
++                               name,
++                               value,
+                                expDate, protVer,
+                                secure, httpOnly, explicitPath);
+             addCookie(cookie);
+Index: kioslave/http/kcookiejar/tests/kcookiejartest.cpp
+===================================================================
+--- kioslave/http/kcookiejar/tests/kcookiejartest.cpp	(revision 844829)
++++ kioslave/http/kcookiejar/tests/kcookiejartest.cpp	(revision 844830)
+@@ -80,6 +80,13 @@
+    QString file = KStandardDirs::locateLocal("config", "kcookiejar-testcookies");
+    QFile::remove(file);
+    jar->saveCookies(file);
++
++   // Add an empty domain to the cookies file, just for testing robustness
++   QFile f(file);
++   f.open(QIODevice::Append);
++   f.write("[]\n   \"\"   \"/\"    1584320400  0 h  4  x\n");
++   f.close();
++
+    delete jar;
+    jar = new KCookieJar();
+    clearConfig();


Index: kdelibs.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kdelibs/devel/kdelibs.spec,v
retrieving revision 1.362
retrieving revision 1.363
diff -u -r1.362 -r1.363
--- kdelibs.spec	10 Aug 2008 15:59:59 -0000	1.362
+++ kdelibs.spec	10 Aug 2008 16:52:21 -0000	1.363
@@ -86,6 +86,7 @@
 # http://bugs.kde.org/167825 , http://bugzilla.redhat.com/457526
 Patch100: kdelibs-4.1.0-kde#167826.patch
 # fix kcookiejar crash on invalid cookie file from KDE 3
+# http://websvn.kde.org/?view=rev&revision=844830
 Patch101: kdelibs-4.1.0-kcookiejar-crash.patch
 
 BuildRequires: qt4-devel >= 4.4.0




More information about the fedora-extras-commits mailing list