summaryrefslogtreecommitdiffstats
path: root/x11/kdelibs4/files
diff options
context:
space:
mode:
Diffstat (limited to 'x11/kdelibs4/files')
-rw-r--r--x11/kdelibs4/files/patch-dcop_dcopserver.cpp185
-rw-r--r--x11/kdelibs4/files/patch-kdecore-kextsock.cpp27
-rw-r--r--x11/kdelibs4/files/patch-kdecore-kidna.cpp58
-rw-r--r--x11/kdelibs4/files/patch-kdecore_kstandarddirs.cpp38
-rw-r--r--x11/kdelibs4/files/patch-kdefx_kstyle.cpp134
-rw-r--r--x11/kdelibs4/files/patch-kdeui-kxmlguifactory.cpp23
-rw-r--r--x11/kdelibs4/files/patch-post-3.2.3-kdelibs-htmlframes434
-rw-r--r--x11/kdelibs4/files/patch-post-3.2.3-kdelibs-kcookiejar140
8 files changed, 0 insertions, 1039 deletions
diff --git a/x11/kdelibs4/files/patch-dcop_dcopserver.cpp b/x11/kdelibs4/files/patch-dcop_dcopserver.cpp
deleted file mode 100644
index 2099d87..0000000
--- a/x11/kdelibs4/files/patch-dcop_dcopserver.cpp
+++ /dev/null
@@ -1,185 +0,0 @@
-Index: dcopserver.cpp
-===================================================================
-RCS file: /home/kde/kdelibs/dcop/dcopserver.cpp,v
-retrieving revision 1.160.2.3
-diff -u -p -r1.160.2.3 dcopserver.cpp
---- dcop/dcopserver.cpp 30 Apr 2004 15:00:08 -0000 1.160.2.3
-+++ dcop/dcopserver.cpp 26 Jul 2004 09:03:06 -0000
-@@ -443,35 +443,78 @@ write_iceauth (FILE *addfp, IceAuthDataE
- fprintf (addfp, "\n");
- }
-
-+#ifndef HAVE_MKSTEMPS
-+#include <string.h>
-+#include <strings.h>
-
--#ifndef HAVE_MKSTEMP
--static char *unique_filename (const char *path, const char *prefix)
--#else
--static char *unique_filename (const char *path, const char *prefix, int *pFd)
--#endif
-+/* this is based on code taken from the GNU libc, distributed under the LGPL license */
-+
-+/* Generate a unique temporary file name from TEMPLATE.
-+
-+ TEMPLATE has the form:
-+
-+ <path>/ccXXXXXX<suffix>
-+
-+ SUFFIX_LEN tells us how long <suffix> is (it can be zero length).
-+
-+ The last six characters of TEMPLATE before <suffix> must be "XXXXXX";
-+ they are replaced with a string that makes the filename unique.
-+
-+ Returns a file descriptor open on the file for reading and writing. */
-+
-+int mkstemps (char* _template, int suffix_len)
- {
--#ifndef HAVE_MKSTEMP
--#ifndef X_NOT_POSIX
-- return ((char *) tempnam (path, prefix));
--#else
-- char tempFile[PATH_MAX];
-- char *tmp;
-+ static const char letters[] = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
-+ char *XXXXXX;
-+ int len;
-+ int count;
-+ int value;
-+
-+ len = strlen (_template);
-+
-+ if ((int) len < 6 + suffix_len || strncmp (&_template[len - 6 - suffix_len], "XXXXXX", 6))
-+ return -1;
-+
-+ XXXXXX = &_template[len - 6 - suffix_len];
-+
-+ value = rand();
-+ for (count = 0; count < 256; ++count)
-+ {
-+ int v = value;
-+ int fd;
-+
-+ /* Fill in the random bits. */
-+ XXXXXX[0] = letters[v % 62];
-+ v /= 62;
-+ XXXXXX[1] = letters[v % 62];
-+ v /= 62;
-+ XXXXXX[2] = letters[v % 62];
-+ v /= 62;
-+ XXXXXX[3] = letters[v % 62];
-+ v /= 62;
-+ XXXXXX[4] = letters[v % 62];
-+ v /= 62;
-+ XXXXXX[5] = letters[v % 62];
-+
-+ fd = open (_template, O_RDWR|O_CREAT|O_EXCL, 0600);
-+ if (fd >= 0)
-+ /* The file does not exist. */
-+ return fd;
-+
-+ /* This is a random value. It is only necessary that the next
-+ TMP_MAX values generated by adding 7777 to VALUE are different
-+ with (module 2^32). */
-+ value += 7777;
-+ }
-+ /* We return the null string if we can't find a unique file name. */
-+ _template[0] = '\0';
-+ return -1;
-+}
-
-- snprintf (tempFile, PATH_MAX, "%s/%sXXXXXX", path, prefix);
-- tmp = (char *) mktemp (tempFile);
-- if (tmp)
-- {
-- char *ptr = (char *) malloc (strlen (tmp) + 1);
-- if (ptr != NULL)
-- {
-- strcpy (ptr, tmp);
-- }
-- return (ptr);
-- }
-- else
-- return (NULL);
- #endif
--#else
-+
-+static char *unique_filename (const char *path, const char *prefix, int *pFd)
-+{
- char tempFile[PATH_MAX];
- char *ptr;
-
-@@ -480,43 +523,10 @@ static char *unique_filename (const char
- if (ptr != NULL)
- {
- strcpy(ptr, tempFile);
-- *pFd = mkstemp(ptr);
-+ *pFd = mkstemps(ptr, 0);
- }
- return ptr;
--#endif
--}
--
--#if 0
--Status SetAuthentication_local (int count, IceListenObj *listenObjs)
--{
-- int i;
-- for (i = 0; i < count; i ++) {
-- char *prot = IceGetListenConnectionString(listenObjs[i]);
-- if (!prot) continue;
-- char *host = strchr(prot, '/');
-- char *sock = 0;
-- if (host) {
-- *host=0;
-- host++;
-- sock = strchr(host, ':');
-- if (sock) {
-- *sock = 0;
-- sock++;
-- }
-- }
--#ifndef NDEBUG
-- qDebug("DCOPServer: SetAProc_loc: conn %d, prot=%s, file=%s",
-- (unsigned)i, prot, sock);
--#endif
-- if (sock && !strcmp(prot, "local")) {
-- chmod(sock, 0700);
-- }
-- IceSetHostBasedAuthProc (listenObjs[i], HostBasedAuthProc);
-- free(prot);
-- }
-- return 1;
- }
--#endif
-
- #define MAGIC_COOKIE_LEN 16
-
-@@ -529,28 +539,19 @@ SetAuthentication (int count, IceListenO
- int original_umask;
- int i;
- QCString command;
--#ifdef HAVE_MKSTEMP
- int fd;
--#endif
-
- original_umask = umask (0077); /* disallow non-owner access */
-
- path = getenv ("DCOP_SAVE_DIR");
- if (!path)
- path = "/tmp";
--#ifndef HAVE_MKSTEMP
-- if ((addAuthFile = unique_filename (path, "dcop")) == NULL)
-- goto bad;
-
-- if (!(addfp = fopen (addAuthFile, "w")))
-- goto bad;
--#else
- if ((addAuthFile = unique_filename (path, "dcop", &fd)) == NULL)
- goto bad;
-
- if (!(addfp = fdopen(fd, "wb")))
- goto bad;
--#endif
-
- if ((*_authDataEntries = static_cast<IceAuthDataEntry *>(malloc (count * 2 * sizeof (IceAuthDataEntry)))) == NULL)
- goto bad;
diff --git a/x11/kdelibs4/files/patch-kdecore-kextsock.cpp b/x11/kdelibs4/files/patch-kdecore-kextsock.cpp
deleted file mode 100644
index d07c32c..0000000
--- a/x11/kdelibs4/files/patch-kdecore-kextsock.cpp
+++ /dev/null
@@ -1,27 +0,0 @@
---- kdecore/kextsock.cpp 11 Dec 2003 22:54:36 -0000 1.67
-+++ kdecore/kextsock.cpp 22 Jan 2004 19:59:13 -0000
-@@ -1892,7 +1892,11 @@ int KExtendedSocket::doLookup(const QStr
- err = kde_getaddrinfo(_host, _serv, &hint, res);
-
- #ifdef HAVE_RES_INIT
-- if (err == EAI_NONAME || err == EAI_NODATA || err == EAI_AGAIN)
-+ if (err == EAI_NONAME ||
-+#ifdef EAI_NODATA
-+ err == EAI_NODATA ||
-+#endif
-+ err == EAI_AGAIN)
- {
- // A loookup error occurred and nothing was resolved
- // However, since the user could have just dialed up to the ISP
-@@ -2274,7 +2278,11 @@ void KExtendedSocket::dnsResultsReady()
- else
- {
- d->status = nothing;
-+#ifdef EAI_NODATA
- setError(IO_LookupError, EAI_NODATA);
-+#else
-+ setError(IO_LookupError, EAI_NONAME);
-+#endif
- }
-
- emit lookupFinished(n);
diff --git a/x11/kdelibs4/files/patch-kdecore-kidna.cpp b/x11/kdelibs4/files/patch-kdecore-kidna.cpp
deleted file mode 100644
index 821a171..0000000
--- a/x11/kdelibs4/files/patch-kdecore-kidna.cpp
+++ /dev/null
@@ -1,58 +0,0 @@
-Index: kdecore/kidna.cpp
-===================================================================
-RCS file: /home/kde/kdelibs/kdecore/kidna.cpp,v
-retrieving revision 1.9.4.1
-diff -u -5 -p -d -r1.9.4.1 kidna.cpp
---- kdecore/kidna.cpp 4 Feb 2004 11:43:34 -0000 1.9.4.1
-+++ kdecore/kidna.cpp 13 Mar 2004 20:24:13 -0000
-@@ -21,16 +21,16 @@
-
- #include "kidna.h"
-
- #include <kdebug.h>
-
--#include "ltdl.h"
-+#include <dlfcn.h>
- #include <stdlib.h>
-
- #define IDNA_SUCCESS 0
-
--static lt_dlhandle KIDNA_lib; // = 0
-+void *KIDNA_lib; // = 0
- static bool KIDNA_lib_load_failed; // = false
-
- typedef int (*KIDNA_utf8_to_ace_t)(const char *, char **, int);
- typedef int (*KIDNA_utf8ace_to_utf8_t)(const char *, char **, int);
-
-@@ -38,27 +38,27 @@ static KIDNA_utf8_to_ace_t KIDNA_utf8_to
- static KIDNA_utf8ace_to_utf8_t KIDNA_utf8ace_to_utf8; // = 0
-
- static void KIDNA_load_lib()
- {
- KIDNA_lib_load_failed = true; // Unless proven otherwise
-- KIDNA_lib = lt_dlopen("/usr/local/lib/libidn.la");
-+ KIDNA_lib = dlopen("%%LOCALBASE%%/lib/libidn.so", RTLD_LAZY);
- if (!KIDNA_lib)
- {
-- KIDNA_lib = lt_dlopen("/usr/lib/libidn.la");
-+ KIDNA_lib = dlopen("/usr/lib/libidn.so", RTLD_LAZY);
- }
-
- if (!KIDNA_lib)
- return; // Error
-
-- KIDNA_utf8_to_ace = (KIDNA_utf8_to_ace_t) lt_dlsym(KIDNA_lib, "idna_to_ascii_8z");
-+ KIDNA_utf8_to_ace = (KIDNA_utf8_to_ace_t) dlsym(KIDNA_lib, "idna_to_ascii_8z");
- if (!KIDNA_utf8_to_ace)
- {
- kdWarning() << "Symbol idna_utf8_to_ace not found." << endl;
- return; // Error
- }
-
-- KIDNA_utf8ace_to_utf8 = (KIDNA_utf8ace_to_utf8_t) lt_dlsym(KIDNA_lib, "idna_to_unicode_8z8z");
-+ KIDNA_utf8ace_to_utf8 = (KIDNA_utf8ace_to_utf8_t) dlsym(KIDNA_lib, "idna_to_unicode_8z8z");
- if (!KIDNA_utf8ace_to_utf8)
- {
- kdWarning() << "Symbol idna_utf8ace_to_utf8 not found." << endl;
- return; // Error
- }
diff --git a/x11/kdelibs4/files/patch-kdecore_kstandarddirs.cpp b/x11/kdelibs4/files/patch-kdecore_kstandarddirs.cpp
deleted file mode 100644
index 30d6bd1..0000000
--- a/x11/kdelibs4/files/patch-kdecore_kstandarddirs.cpp
+++ /dev/null
@@ -1,38 +0,0 @@
-Index: kstandarddirs.cpp
-===================================================================
-RCS file: /home/kde/kdelibs/kdecore/kstandarddirs.cpp,v
-retrieving revision 1.168.2.3
-retrieving revision 1.168.2.4
-diff -u -p -r1.168.2.3 -r1.168.2.4
---- kdecore/kstandarddirs.cpp 8 Jun 2004 09:27:57 -0000 1.168.2.3
-+++ kdecore/kstandarddirs.cpp 26 Jun 2004 14:42:16 -0000 1.168.2.4
-@@ -651,7 +651,28 @@ void KStandardDirs::createSpecialResourc
- char link[1024];
- link[1023] = 0;
- int result = readlink(QFile::encodeName(dir).data(), link, 1023);
-- if ((result == -1) && (errno == ENOENT))
-+ bool relink = (result == -1) && (errno == ENOENT);
-+ if ((result > 0) && (link[0] == '/'))
-+ {
-+ link[result] = 0;
-+ struct stat stat_buf;
-+ int res = lstat(link, &stat_buf);
-+ if ((res == -1) && (errno == ENOENT))
-+ {
-+ relink = true;
-+ }
-+ else if ((res == -1) || (!S_ISDIR(stat_buf.st_mode)))
-+ {
-+ fprintf(stderr, "Error: \"%s\" is not a directory.\n", link);
-+ relink = true;
-+ }
-+ else if (stat_buf.st_uid != getuid())
-+ {
-+ fprintf(stderr, "Error: \"%s\" is owned by uid %d instead of uid %d.\n", link, stat_buf.st_uid, getuid());
-+ relink = true;
-+ }
-+ }
-+ if (relink)
- {
- QString srv = findExe(QString::fromLatin1("lnusertemp"), KDEDIR+QString::fromLatin1("/bin"));
- if (srv.isEmpty())
diff --git a/x11/kdelibs4/files/patch-kdefx_kstyle.cpp b/x11/kdelibs4/files/patch-kdefx_kstyle.cpp
deleted file mode 100644
index 27106d2..0000000
--- a/x11/kdelibs4/files/patch-kdefx_kstyle.cpp
+++ /dev/null
@@ -1,134 +0,0 @@
---- kdefx/kstyle.cpp.orig 19 Jun 2004 15:00:06 -0000 1.49
-+++ kdefx/kstyle.cpp 19 Jun 2004 15:07:47 -0000
-@@ -158,12 +158,16 @@ struct KStylePrivate
- float menuOpacity;
-
- TransparencyEngine transparencyEngine;
- KStyle::KStyleScrollBarType scrollbarType;
- TransparencyHandler* menuHandler;
- KStyle::KStyleFlags flags;
-+
-+ //For KPE_ListViewBranch
-+ QBitmap *verticalLine;
-+ QBitmap *horizontalLine;
- };
-
- // -----------------------------------------------------------------------------
-
-
- KStyle::KStyle( KStyleFlags flags, KStyleScrollBarType sbtype )
-@@ -206,23 +210,28 @@ KStyle::KStyle( KStyleFlags flags, KStyl
- // Create an instance of the menu transparency handler
- d->menuOpacity = settings.readDoubleEntry("/KStyle/Settings/MenuOpacity", 0.90);
- d->menuHandler = new TransparencyHandler(this, d->transparencyEngine,
- d->menuOpacity, d->menuDropShadow);
- }
- }
-+
-+ d->verticalLine = 0;
-+ d->horizontalLine = 0;
-
- // Create a transparency handler if only drop shadows are enabled.
- if (!d->menuHandler && d->menuDropShadow)
- d->menuHandler = new TransparencyHandler(this, Disabled, 1.0, d->menuDropShadow);
- }
-
-
- KStyle::~KStyle()
- {
-- if (d->menuHandler)
-- delete d->menuHandler;
-+ delete d->verticalLine;
-+ delete d->horizontalLine;
-+
-+ delete d->menuHandler;
-
- d->menuHandler = NULL;
- delete d;
- }
-
-
-@@ -391,46 +400,40 @@ void KStyle::drawKStylePrimitive( KStyle
- break;
- }
-
- case KPE_ListViewBranch: {
- // Typical Windows style listview branch element (dotted line).
-
-- static QBitmap *verticalLine = 0, *horizontalLine = 0;
-- static QCleanupHandler<QBitmap> qlv_cleanup_bitmap;
--
- // Create the dotline pixmaps if not already created
-- if ( !verticalLine )
-+ if ( !d->verticalLine )
- {
- // make 128*1 and 1*128 bitmaps that can be used for
- // drawing the right sort of lines.
-- verticalLine = new QBitmap( 1, 129, true );
-- horizontalLine = new QBitmap( 128, 1, true );
-+ d->verticalLine = new QBitmap( 1, 129, true );
-+ d->horizontalLine = new QBitmap( 128, 1, true );
- QPointArray a( 64 );
- QPainter p2;
-- p2.begin( verticalLine );
-+ p2.begin( d->verticalLine );
-
- int i;
- for( i=0; i < 64; i++ )
- a.setPoint( i, 0, i*2+1 );
- p2.setPen( color1 );
- p2.drawPoints( a );
- p2.end();
- QApplication::flushX();
-- verticalLine->setMask( *verticalLine );
-+ d->verticalLine->setMask( *d->verticalLine );
-
-- p2.begin( horizontalLine );
-+ p2.begin( d->horizontalLine );
- for( i=0; i < 64; i++ )
- a.setPoint( i, i*2+1, 0 );
- p2.setPen( color1 );
- p2.drawPoints( a );
- p2.end();
- QApplication::flushX();
-- horizontalLine->setMask( *horizontalLine );
--
-- qlv_cleanup_bitmap.add( &verticalLine );
-- qlv_cleanup_bitmap.add( &horizontalLine );
-+ d->horizontalLine->setMask( *d->horizontalLine );
- }
-
- p->setPen( cg.text() ); // cg.dark() is bad for dark color schemes.
-
- if (flags & Style_Horizontal)
- {
-@@ -441,13 +444,13 @@ void KStyle::drawKStylePrimitive( KStyle
-
- while( point < end )
- {
- int i = 128;
- if ( i+point > end )
- i = end-point;
-- p->drawPixmap( point, other, *horizontalLine, 0, 0, i, thickness );
-+ p->drawPixmap( point, other, *d->horizontalLine, 0, 0, i, thickness );
- point += i;
- }
-
- } else {
- int point = r.y();
- int other = r.x();
-@@ -457,13 +460,13 @@ void KStyle::drawKStylePrimitive( KStyle
-
- while( point < end )
- {
- int i = 128;
- if ( i+point > end )
- i = end-point;
-- p->drawPixmap( other, point, *verticalLine, 0, pixmapoffset, thickness, i );
-+ p->drawPixmap( other, point, *d->verticalLine, 0, pixmapoffset, thickness, i );
- point += i;
- }
- }
-
- break;
- }
diff --git a/x11/kdelibs4/files/patch-kdeui-kxmlguifactory.cpp b/x11/kdelibs4/files/patch-kdeui-kxmlguifactory.cpp
deleted file mode 100644
index a9ae71f..0000000
--- a/x11/kdelibs4/files/patch-kdeui-kxmlguifactory.cpp
+++ /dev/null
@@ -1,23 +0,0 @@
-Index: kxmlguifactory.cpp
-===================================================================
-RCS file: /home/kde/kdelibs/kdeui/kxmlguifactory.cpp,v
-retrieving revision 1.149
-retrieving revision 1.151
-diff -u -3 -p -r1.149 -r1.151
---- kxmlguifactory.cpp 19 Jun 2004 21:35:02 -0000 1.149
-+++ kdeui/kxmlguifactory.cpp 22 Jun 2004 15:56:16 -0000 1.151
-@@ -124,7 +124,14 @@ QString KXMLGUIFactory::readConfigFile(
- return QString::null;
- }
-
-+#if QT_VERSION <= 0x030302
-+ // Work around bug in QString::fromUtf8 (which calls strlen).
-+ QByteArray buffer(file.size() + 1);
-+ buffer = file.readAll();
-+ buffer[ buffer.size() - 1 ] = '\0';
-+#else
- QByteArray buffer(file.readAll());
-+#endif
- return QString::fromUtf8(buffer.data(), buffer.size());
- }
-
diff --git a/x11/kdelibs4/files/patch-post-3.2.3-kdelibs-htmlframes b/x11/kdelibs4/files/patch-post-3.2.3-kdelibs-htmlframes
deleted file mode 100644
index bc5b3a2..0000000
--- a/x11/kdelibs4/files/patch-post-3.2.3-kdelibs-htmlframes
+++ /dev/null
@@ -1,434 +0,0 @@
-Index: khtml/khtml_ext.cpp
-===================================================================
-RCS file: /home/kde/kdelibs/khtml/khtml_ext.cpp,v
-retrieving revision 1.85.2.2
-diff -u -p -r1.85.2.2 khtml_ext.cpp
---- khtml/khtml_ext.cpp 24 Apr 2004 08:20:46 -0000 1.85.2.2
-+++ khtml/khtml_ext.cpp 3 Aug 2004 14:36:43 -0000
-@@ -646,6 +646,19 @@ bool KHTMLPartBrowserHostExtension::open
- return m_part->openURLInFrame( url, urlArgs );
- }
-
-+void KHTMLPartBrowserHostExtension::virtual_hook( int id, void *data )
-+{
-+ if (id == VIRTUAL_FIND_FRAME_PARENT)
-+ {
-+ FindFrameParentParams *param = static_cast<FindFrameParentParams*>(data);
-+ KHTMLPart *parentPart = m_part->findFrameParent(param->callingPart, param->frame);
-+ if (parentPart)
-+ param->parent = parentPart->browserHostExtension();
-+ return;
-+ }
-+ BrowserHostExtension::virtual_hook( id, data );
-+}
-+
- // BCI: remove in KDE 4
- KHTMLZoomFactorAction::KHTMLZoomFactorAction( KHTMLPart *part, bool direction, const QString &text, const QString &icon, const QObject *receiver, const char *slot, QObject *parent, const char *name )
- : KAction( text, icon, 0, receiver, slot, parent, name )
-Index: khtml/khtml_ext.h
-===================================================================
-RCS file: /home/kde/kdelibs/khtml/khtml_ext.h,v
-retrieving revision 1.26.2.1
-diff -u -p -r1.26.2.1 khtml_ext.h
---- khtml/khtml_ext.h 29 Feb 2004 15:27:43 -0000 1.26.2.1
-+++ khtml/khtml_ext.h 3 Aug 2004 14:36:43 -0000
-@@ -98,6 +98,9 @@ public:
- virtual const QPtrList<KParts::ReadOnlyPart> frames() const;
-
- virtual bool openURLInFrame( const KURL &url, const KParts::URLArgs &urlArgs );
-+
-+protected:
-+ virtual void virtual_hook( int id, void* data );
- private:
- KHTMLPart *m_part;
- };
-Index: khtml/khtml_part.cpp
-===================================================================
-RCS file: /home/kde/kdelibs/khtml/khtml_part.cpp,v
-retrieving revision 1.959.2.20
-diff -u -p -r1.959.2.20 khtml_part.cpp
---- khtml/khtml_part.cpp 29 Jun 2004 09:08:16 -0000 1.959.2.20
-+++ khtml/khtml_part.cpp 3 Aug 2004 14:36:46 -0000
-@@ -757,12 +757,16 @@ DOM::Document KHTMLPart::document() cons
- return d->m_doc;
- }
-
--
- KParts::BrowserExtension *KHTMLPart::browserExtension() const
- {
- return d->m_extension;
- }
-
-+KParts::BrowserHostExtension *KHTMLPart::browserHostExtension() const
-+{
-+ return d->m_hostExtension;
-+}
-+
- KHTMLView *KHTMLPart::view() const
- {
- return d->m_view;
-@@ -880,29 +884,18 @@ QVariant KHTMLPart::crossFrameExecuteScr
- // we always allow these
- }
- else {
-- while (destpart->parentPart())
-- destpart = destpart->parentPart();
-- destpart = destpart->findFrame(target);
--
-+ destpart = findFrame(target);
- if (!destpart)
-- destpart = this; // ### doesn't make sense, does it?
-+ destpart = this;
- }
-
- // easy way out?
- if (destpart == this)
- return executeScript(DOM::Node(), script);
-
--
- // now compare the domains
-- if (!destpart->htmlDocument().isNull() &&
-- !htmlDocument().isNull()) {
-- DOM::DOMString actDomain = htmlDocument().domain();
-- DOM::DOMString destDomain = destpart->htmlDocument().domain();
--
-- if (actDomain == destDomain)
-- return destpart->executeScript(DOM::Node(), script);
-- }
--
-+ if (destpart->checkFrameAccess(this))
-+ return destpart->executeScript(DOM::Node(), script);
-
- // eww, something went wrong. better execute it in our frame
- return executeScript(DOM::Node(), script);
-@@ -3358,7 +3351,7 @@ void KHTMLPart::urlSelected( const QStri
- if ( hasTarget )
- {
- // unknown frame names should open in a new window.
-- khtml::ChildFrame *frame = recursiveFrameRequest( cURL, args, false );
-+ khtml::ChildFrame *frame = recursiveFrameRequest( this, cURL, args, false );
- if ( frame )
- {
- args.metaData()["referrer"] = d->m_referrer;
-@@ -4364,6 +4357,7 @@ void KHTMLPart::slotChildDocCreated()
- void KHTMLPart::slotChildURLRequest( const KURL &url, const KParts::URLArgs &args )
- {
- khtml::ChildFrame *child = frame( sender()->parent() );
-+ KHTMLPart *callingHtmlPart = const_cast<KHTMLPart *>(dynamic_cast<const KHTMLPart *>(sender()->parent()));
-
- // TODO: handle child target correctly! currently the script are always executed fur the parent
- QString urlStr = url.url();
-@@ -4395,7 +4389,7 @@ void KHTMLPart::slotChildURLRequest( con
- }
- else if ( frameName != QString::fromLatin1( "_self" ) )
- {
-- khtml::ChildFrame *_frame = recursiveFrameRequest( url, args );
-+ khtml::ChildFrame *_frame = recursiveFrameRequest( callingHtmlPart, url, args );
-
- if ( !_frame )
- {
-@@ -4437,46 +4431,92 @@ khtml::ChildFrame *KHTMLPart::frame( con
- return 0L;
- }
-
--//#define DEBUG_FINDFRAME
-+//#define DEBUG_FINDFRAME
-
--KHTMLPart *KHTMLPart::findFrame( const QString &f )
-+bool KHTMLPart::checkFrameAccess(KHTMLPart *callingHtmlPart)
- {
-+ if (callingHtmlPart == this)
-+ return true; // trivial
-+
-+ if (htmlDocument().isNull()) {
- #ifdef DEBUG_FINDFRAME
-- kdDebug(6050) << "KHTMLPart::findFrame '" << f << "'" << endl;
-- FrameIt it2 = d->m_frames.begin();
-- FrameIt end = d->m_frames.end();
-- for (; it2 != end; ++it2 )
-- kdDebug(6050) << " - having frame '" << (*it2).m_name << "'" << endl;
-+ kdDebug(6050) << "KHTMLPart::checkFrameAccess: Empty part " << this << " URL = " << m_url << endl;
- #endif
-- // ### http://www.w3.org/TR/html4/appendix/notes.html#notes-frames
-- ConstFrameIt it = d->m_frames.find( f );
-- if ( it == d->m_frames.end() )
-- {
-+ return false; // we are empty?
-+ }
-+
-+ // now compare the domains
-+ if (callingHtmlPart && !callingHtmlPart->htmlDocument().isNull() &&
-+ !htmlDocument().isNull()) {
-+ DOM::DOMString actDomain = callingHtmlPart->htmlDocument().domain();
-+ DOM::DOMString destDomain = htmlDocument().domain();
-+
- #ifdef DEBUG_FINDFRAME
-- kdDebug(6050) << "KHTMLPart::findFrame frame " << f << " not found" << endl;
-+ kdDebug(6050) << "KHTMLPart::checkFrameAccess: actDomain = '" << actDomain.string() << "' destDomain = '" << destDomain.string() << "'" << endl;
- #endif
-- return 0L;
-+
-+ if (actDomain == destDomain)
-+ return true;
- }
-- else {
-- KParts::ReadOnlyPart *p = (*it).m_part;
-- if ( p && p->inherits( "KHTMLPart" ))
-- {
- #ifdef DEBUG_FINDFRAME
-- kdDebug(6050) << "KHTMLPart::findFrame frame " << f << " is a KHTMLPart, ok" << endl;
-+ else
-+ {
-+ kdDebug(6050) << "KHTMLPart::checkFrameAccess: Unknown part/domain " << callingHtmlPart << " tries to access part " << this << endl;
-+ }
- #endif
-- return (KHTMLPart*)p;
-- }
-- else
-- {
-+ return false;
-+}
-+
-+KHTMLPart *
-+KHTMLPart::findFrameParent( KParts::ReadOnlyPart *callingPart, const QString &f, khtml::ChildFrame **childFrame )
-+{
- #ifdef DEBUG_FINDFRAME
-- if (p)
-- kdWarning() << "KHTMLPart::findFrame frame " << f << " found but isn't a KHTMLPart ! " << p->className() << endl;
-- else
-- kdWarning() << "KHTMLPart::findFrame frame " << f << " found but m_part=0L" << endl;
-+ kdDebug(6050) << "KHTMLPart::findFrameParent: this = " << this << " URL = " << m_url << " findFrameParent( " << f << " )" << endl;
-+#endif
-+ // Check access
-+ KHTMLPart *callingHtmlPart = dynamic_cast<KHTMLPart *>(callingPart);
-+
-+ if (!checkFrameAccess(callingHtmlPart))
-+ return 0;
-+
-+ FrameIt it = d->m_frames.find( f );
-+ FrameIt end = d->m_frames.end();
-+ if ( it != end )
-+ {
-+#ifdef DEBUG_FINDFRAME
-+ kdDebug(6050) << "KHTMLPart::findFrameParent: FOUND!" << endl;
- #endif
-- return 0L;
-+ if (childFrame)
-+ *childFrame = &(*it);
-+ return this;
-+ }
-+
-+ it = d->m_frames.begin();
-+ for (; it != end; ++it )
-+ {
-+ KParts::ReadOnlyPart *p = (*it).m_part;
-+ if ( p && p->inherits( "KHTMLPart" ))
-+ {
-+ KHTMLPart *frameParent = static_cast<KHTMLPart*>(p)->findFrameParent(callingPart, f, childFrame);
-+ if (frameParent)
-+ return frameParent;
- }
- }
-+ return 0;
-+}
-+
-+
-+KHTMLPart *KHTMLPart::findFrame( const QString &f )
-+{
-+ khtml::ChildFrame *childFrame;
-+ KHTMLPart *parentFrame = findFrameParent(this, f, &childFrame);
-+ if (parentFrame)
-+ {
-+ KParts::ReadOnlyPart *p = childFrame->m_part;
-+ if ( p && p->inherits( "KHTMLPart" ))
-+ return static_cast<KHTMLPart *>(p);
-+ }
-+ return 0;
- }
-
- KParts::ReadOnlyPart *KHTMLPart::currentFrame() const
-@@ -4514,37 +4554,29 @@ KHTMLPart *KHTMLPart::parentPart()
- return (KHTMLPart *)parent();
- }
-
--khtml::ChildFrame *KHTMLPart::recursiveFrameRequest( const KURL &url, const KParts::URLArgs &args,
-- bool callParent )
-+khtml::ChildFrame *KHTMLPart::recursiveFrameRequest( KHTMLPart *callingHtmlPart, const KURL &url,
-+ const KParts::URLArgs &args, bool callParent )
- {
-- FrameIt it = d->m_frames.find( args.frameName );
--
-- if ( it != d->m_frames.end() )
-- return &(*it);
--
-- it = d->m_frames.begin();
-- FrameIt end = d->m_frames.end();
-- for (; it != end; ++it )
-- if ( (*it).m_part && (*it).m_part->inherits( "KHTMLPart" ) )
-- {
-- KHTMLPart *childPart = (KHTMLPart *)(KParts::ReadOnlyPart *)(*it).m_part;
--
-- khtml::ChildFrame *res = childPart->recursiveFrameRequest( url, args, false );
-- if ( !res )
-- continue;
--
-- childPart->requestObject( res, url, args );
-- return 0L;
-- }
-+#ifdef DEBUG_FINDFRAME
-+ kdDebug( 6050 ) << "KHTMLPart::recursiveFrameRequest this = " << this << ", frame = " << args.frameName << ", url = " << url << endl;
-+#endif
-+ khtml::ChildFrame *childFrame;
-+ KHTMLPart *childPart = findFrameParent(callingHtmlPart, args.frameName, &childFrame);
-+ if (childPart)
-+ {
-+ if (childPart == this)
-+ return childFrame;
-+
-+ childPart->requestObject( childFrame, url, args );
-+ return 0;
-+ }
-
- if ( parentPart() && callParent )
- {
-- khtml::ChildFrame *res = parentPart()->recursiveFrameRequest( url, args );
-+ khtml::ChildFrame *res = parentPart()->recursiveFrameRequest( callingHtmlPart, url, args, callParent );
-
-- if ( res )
-- parentPart()->requestObject( res, url, args );
--
-- return 0L;
-+ if ( res )
-+ parentPart()->requestObject( res, url, args );
- }
-
- return 0L;
-@@ -4552,7 +4584,7 @@ khtml::ChildFrame *KHTMLPart::recursiveF
-
- void KHTMLPart::saveState( QDataStream &stream )
- {
-- kdDebug( 6050 ) << "KHTMLPart::saveState saving URL " << m_url.url() << endl;
-+ kdDebug( 6050 ) << "KHTMLPart::saveState this = " << this << " saving URL " << m_url.url() << endl;
-
- stream << m_url << (Q_INT32)d->m_view->contentsX() << (Q_INT32)d->m_view->contentsY()
- << (Q_INT32) d->m_view->contentsWidth() << (Q_INT32) d->m_view->contentsHeight() << (Q_INT32) d->m_view->marginWidth() << (Q_INT32) d->m_view->marginHeight();
-Index: khtml/khtml_part.h
-===================================================================
-RCS file: /home/kde/kdelibs/khtml/khtml_part.h,v
-retrieving revision 1.248.2.5
-diff -u -p -r1.248.2.5 khtml_part.h
---- khtml/khtml_part.h 29 Jun 2004 09:08:16 -0000 1.248.2.5
-+++ khtml/khtml_part.h 3 Aug 2004 14:36:47 -0000
-@@ -287,6 +287,7 @@ public:
- */
- KParts::BrowserExtension *browserExtension() const;
- KParts::LiveConnectExtension *liveConnectExtension( const khtml::RenderPart *) const;
-+ KParts::BrowserHostExtension *browserHostExtension() const;
-
- /**
- * Returns a pointer to the HTML document's view.
-@@ -812,6 +813,16 @@ public:
- KHTMLPart *findFrame( const QString &f );
-
- /**
-+ * @internal
-+ * Recursively finds the part containing the frame with name @p f
-+ * and checks if it is accessible by @p callingPart
-+ * Returns 0L if no suitable frame can't be found.
-+ * Returns parent part if a suitable frame was found and
-+ * frame info in @p *childFrame
-+ */
-+ KHTMLPart *findFrameParent( KParts::ReadOnlyPart *callingPart, const QString &f, khtml::ChildFrame **childFrame=0 );
-+
-+ /**
- * Return the current frame (the one that has focus)
- * Not necessarily a direct child of ours, framesets can be nested.
- * Returns "this" if this part isn't a frameset.
-@@ -1376,6 +1387,8 @@ private:
-
- bool restoreURL( const KURL &url );
- void emitSelectionChanged();
-+ // Returns whether callingHtmlPart may access this part
-+ bool checkFrameAccess(KHTMLPart *callingHtmlPart);
- bool openURLInFrame( const KURL &url, const KParts::URLArgs &urlArgs );
- void startAutoScroll();
- void stopAutoScroll();
-@@ -1434,7 +1447,7 @@ private:
- DOM::DocumentImpl *xmlDocImpl() const;
- khtml::ChildFrame *frame( const QObject *obj );
-
-- khtml::ChildFrame *recursiveFrameRequest( const KURL &url, const KParts::URLArgs &args, bool callParent = true );
-+ khtml::ChildFrame *recursiveFrameRequest( KHTMLPart *callingHtmlPart, const KURL &url, const KParts::URLArgs &args, bool callParent = true );
-
- bool checkLinkSecurity( const KURL &linkURL,const QString &message = QString::null, const QString &button = QString::null );
- QVariant executeScript( const QString& filename, int baseLine, const DOM::Node &n, const QString& script );
-Index: kparts/browserextension.cpp
-===================================================================
-RCS file: /home/kde/kdelibs/kparts/browserextension.cpp,v
-retrieving revision 1.60.2.1
-diff -u -p -r1.60.2.1 browserextension.cpp
---- kparts/browserextension.cpp 10 Apr 2004 15:08:49 -0000 1.60.2.1
-+++ kparts/browserextension.cpp 3 Aug 2004 14:36:48 -0000
-@@ -636,6 +636,17 @@ BrowserHostExtension *BrowserHostExtensi
- void BrowserExtension::virtual_hook( int, void* )
- { /*BASE::virtual_hook( id, data );*/ }
-
-+BrowserHostExtension *
-+BrowserHostExtension::findFrameParent(KParts::ReadOnlyPart *callingPart, const QString &frame)
-+{
-+ FindFrameParentParams param;
-+ param.parent = 0;
-+ param.callingPart = callingPart;
-+ param.frame = frame;
-+ virtual_hook(VIRTUAL_FIND_FRAME_PARENT, &param);
-+ return param.parent;
-+}
-+
- void BrowserHostExtension::virtual_hook( int, void* )
- { /*BASE::virtual_hook( id, data );*/ }
-
-Index: kparts/browserextension.h
-===================================================================
-RCS file: /home/kde/kdelibs/kparts/browserextension.h,v
-retrieving revision 1.110
-diff -u -p -r1.110 browserextension.h
---- kparts/browserextension.h 26 Sep 2003 07:13:13 -0000 1.110
-+++ kparts/browserextension.h 3 Aug 2004 14:36:48 -0000
-@@ -671,10 +671,16 @@ public:
- *
- * Note that this method does not query the child objects recursively.
- */
--
- virtual const QPtrList<KParts::ReadOnlyPart> frames() const;
-
- /**
-+ * @internal
-+ * Returns the part that contains @p frame and that may be accessed
-+ * by @p callingPart
-+ */
-+ BrowserHostExtension *findFrameParent(KParts::ReadOnlyPart *callingPart, const QString &frame);
-+
-+ /**
- * Opens the given url in a hosted child frame. The frame name is specified in the
- * frameName variable in the urlArgs argument structure (see KParts::URLArgs ) .
- */
-@@ -687,6 +693,19 @@ public:
- static BrowserHostExtension *childObject( QObject *obj );
-
- protected:
-+ /** This 'enum' along with the structure below is NOT part of the public API.
-+ * It's going to disappear in KDE 4.0 and is likely to change inbetween.
-+ *
-+ * @internal
-+ */
-+ enum { VIRTUAL_FIND_FRAME_PARENT = 0x10 };
-+ struct FindFrameParentParams
-+ {
-+ BrowserHostExtension *parent;
-+ KParts::ReadOnlyPart *callingPart;
-+ QString frame;
-+ };
-+
- virtual void virtual_hook( int id, void* data );
- private:
- class BrowserHostExtensionPrivate;
diff --git a/x11/kdelibs4/files/patch-post-3.2.3-kdelibs-kcookiejar b/x11/kdelibs4/files/patch-post-3.2.3-kdelibs-kcookiejar
deleted file mode 100644
index 2da6e9a..0000000
--- a/x11/kdelibs4/files/patch-post-3.2.3-kdelibs-kcookiejar
+++ /dev/null
@@ -1,140 +0,0 @@
-Index: kioslave/http/kcookiejar/kcookiejar.cpp
-===================================================================
-RCS file: /home/kde/kdelibs/kioslave/http/kcookiejar/kcookiejar.cpp,v
-retrieving revision 1.116
-retrieving revision 1.117
-diff -u -p -r1.116 -r1.117
---- kioslave/http/kcookiejar/kcookiejar.cpp 19 Jul 2004 10:16:22 -0000 1.116
-+++ kioslave/http/kcookiejar/kcookiejar.cpp 20 Jul 2004 15:29:24 -0000 1.117
-@@ -244,6 +244,14 @@ KCookieJar::KCookieJar()
- m_globalAdvice = KCookieDunno;
- m_configChanged = false;
- m_cookiesChanged = false;
-+
-+ QString twoLevelTLD="name,ai,au,bd,bh,ck,eg,et,fk,il,in,kh,kr,mk,mt,na,np,nz,pg,pk,qa,sa,sb,sg,sv,ua,ug,uk,uy,vn,za,zw";
-+ QStringList countries = QStringList::split(',', twoLevelTLD);
-+ for(QStringList::ConstIterator it = countries.begin();
-+ it != countries.end(); ++it)
-+ {
-+ m_twoLevelTLD.replace(*it, (int *) 1);
-+ }
- }
-
- //
-@@ -528,14 +536,14 @@ static const char * parseNameValue(const
-
- }
-
--static void stripDomain(const QString &_fqdn, QString &_domain)
-+void KCookieJar::stripDomain(const QString &_fqdn, QString &_domain)
- {
- QStringList domains;
-- KCookieJar::extractDomains(_fqdn, domains);
-+ extractDomains(_fqdn, domains);
- _domain = domains[0];
- }
-
--static QString stripDomain( KHttpCookiePtr cookiePtr)
-+QString KCookieJar::stripDomain( KHttpCookiePtr cookiePtr)
- {
- QString domain; // We file the cookie under this domain.
- if (cookiePtr->domain().isEmpty())
-@@ -620,6 +628,13 @@ void KCookieJar::extractDomains(const QS
- {
- if (partList.count() == 1)
- break; // We only have a TLD left.
-+
-+ if ((partList.count() == 2) && (m_twoLevelTLD[partList[1].lower()]))
-+ {
-+ // This domain uses two-level TLDs in the form xxxx.yy
-+ break;
-+ }
-+
- if ((partList.count() == 2) && (partList[1].length() == 2))
- {
- // If this is a TLD, we should stop. (e.g. co.uk)
-@@ -634,14 +649,6 @@ void KCookieJar::extractDomains(const QS
- break;
- }
-
-- // The .name domain uses <name>.<surname>.name
-- // Although the TLD is striclty speaking .name, for our purpose
-- // it should be <surname>.name since people should not be able
-- // to set cookies for everyone with the same surname.
-- // Matches <surname>.name
-- if ((partList.count() == 2)&& (partList[1].lower() == L1("name")))
-- break;
--
- QString domain = partList.join(L1("."));
- _domains.append('.' + domain);
- _domains.append(domain);
-Index: kioslave/http/kcookiejar/kcookiejar.h
-===================================================================
-RCS file: /home/kde/kdelibs/kioslave/http/kcookiejar/kcookiejar.h,v
-retrieving revision 1.33
-retrieving revision 1.34
-diff -u -p -r1.33 -r1.34
---- kioslave/http/kcookiejar/kcookiejar.h 22 Nov 2003 16:50:45 -0000 1.33
-+++ kioslave/http/kcookiejar/kcookiejar.h 20 Jul 2004 15:29:24 -0000 1.34
-@@ -306,8 +306,8 @@ public:
- /**
- * Returns a list of domains (_domainList) relevant for this host.
- */
-- static void extractDomains(const QString &_fqdn,
-- QStringList &_domainList);
-+ void extractDomains(const QString &_fqdn,
-+ QStringList &_domainList);
-
- static QString adviceToStr(KCookieAdvice _advice);
- static KCookieAdvice strToAdvice(const QString &_str);
-@@ -329,11 +329,15 @@ public:
- */
- void setShowCookieDetails (bool value) { m_showCookieDetails = value; }
-
-+protected:
-+ void stripDomain(const QString &_fqdn, QString &_domain);
-+ QString stripDomain( KHttpCookiePtr cookiePtr);
-
- protected:
- QStringList m_domainList;
- KCookieAdvice m_globalAdvice;
- QDict<KHttpCookieList> m_cookieDomains;
-+ QDict<int> m_twoLevelTLD;
-
- bool m_configChanged;
- bool m_cookiesChanged;
-Index: kioslave/http/kcookiejar/kcookieserver.cpp
-===================================================================
-RCS file: /home/kde/kdelibs/kioslave/http/kcookiejar/kcookieserver.cpp,v
-retrieving revision 1.50
-retrieving revision 1.51
-diff -u -p -r1.50 -r1.51
---- kioslave/http/kcookiejar/kcookieserver.cpp 9 Jun 2003 10:56:42 -0000 1.50
-+++ kioslave/http/kcookiejar/kcookieserver.cpp 20 Jul 2004 15:29:24 -0000 1.51
-@@ -131,7 +131,7 @@ bool KCookieServer::cookiesPending( cons
- if (!KCookieJar::parseURL(url, fqdn, path))
- return false;
-
-- KCookieJar::extractDomains( fqdn, domains );
-+ mCookieJar->extractDomains( fqdn, domains );
- for( KHttpCookie *cookie = mPendingCookies->first();
- cookie != 0L;
- cookie = mPendingCookies->next())
-@@ -557,7 +557,7 @@ KCookieServer::setDomainAdvice(QString u
- if (KCookieJar::parseURL(url, fqdn, dummy))
- {
- QStringList domains;
-- KCookieJar::extractDomains(fqdn, domains);
-+ mCookieJar->extractDomains(fqdn, domains);
- mCookieJar->setDomainAdvice(domains[0],
- KCookieJar::strToAdvice(advice));
- }
-@@ -573,7 +573,7 @@ KCookieServer::getDomainAdvice(QString u
- if (KCookieJar::parseURL(url, fqdn, dummy))
- {
- QStringList domains;
-- KCookieJar::extractDomains(fqdn, domains);
-+ mCookieJar->extractDomains(fqdn, domains);
- advice = mCookieJar->getDomainAdvice(domains[0]);
- }
- return KCookieJar::adviceToStr(advice);
OpenPOWER on IntegriCloud