[Frugalware-darcs] frugalware-0.6: kdebase-3.5.6-3terminus3-x86_64

voroskoi voroskoi at frugalware.org
Sun Oct 7 15:57:49 CEST 2007


Darcsweb-Url: http://darcs.frugalware.org/darcsweb/darcsweb.cgi?r=frugalware-0.6;a=darcs_commitdiff;h=20071007135610-dd049-9cb6d4761e6c590d2740d8cce630e2b5fbdeb7df.gz;

[kdebase-3.5.6-3terminus3-x86_64
voroskoi <voroskoi at frugalware.org>**20071007135610
 secfix relbump, closes #2198
] {
addfile ./source/kde/kdebase/CVE-2007-2022.diff
hunk ./source/kde/kdebase/CVE-2007-2022.diff 1
+------------------------------------------------------------------------
+r652585 | lunakl | 2007-04-11 16:26:32 +0200 (Wed, 11 Apr 2007) | 3 lines
+Changed paths:
+   M /branches/KDE/3.5/kdebase/nsplugins/viewer/qxteventloop.cpp
+
+Fix keyboard events handling.
+
+
+------------------------------------------------------------------------
+Index: nsplugins/viewer/qxteventloop.cpp
+===================================================================
+--- kdebase/nsplugins/viewer/qxteventloop.cpp	(revision 652584)
++++ nsplugins/viewer/qxteventloop.cpp	(revision 652585)
+@@ -32,12 +32,16 @@
+ ** not clear to you.
+ **
+ **********************************************************************/
++
++#include <config.h>
++
+ #include "qxteventloop.h"
+ 
+ #if QT_VERSION >= 0x030100
+ 
+ #include <qapplication.h>
+ #include <qwidgetintdict.h>
++#include <kglobal.h>
+ 
+ // resolve the conflict between X11's FocusIn and QEvent::FocusIn
+ const int XFocusOut = FocusOut;
+@@ -52,6 +56,8 @@ const int XKeyRelease = KeyRelease;
+ 
+ Boolean qmotif_event_dispatcher( XEvent *event );
+ 
++static void handle_xquerykeymap( Display* dpy, XEvent* event );
++
+ class QXtEventLoopPrivate
+ {
+ public:
+@@ -147,6 +153,7 @@ void QXtEventLoopPrivate::unhook()
+ extern bool qt_try_modal( QWidget *, XEvent * ); // defined in qapplication_x11.cpp
+ Boolean qmotif_event_dispatcher( XEvent *event )
+ {
++    handle_xquerykeymap( qt_xdisplay(), event );
+     QApplication::sendPostedEvents();
+ 
+     QWidgetIntDict *mapper = &static_d->mapper;
+@@ -462,6 +469,29 @@ bool QXtEventLoop::processEvents( Proces
+     return ( (flags & WaitForMore) || ( pendingmask != 0 ) || nevents > 0 );
+ }
+ 
++#include <dlfcn.h>
++
++static char xquerykeymap_data[ 32 ];
++static int (*real_xquerykeymap)( Display*, char[32] ) = NULL;
++
++static void handle_xquerykeymap( Display* dpy, XEvent* event )
++{
++    if( real_xquerykeymap == NULL )
++        real_xquerykeymap = (int (*)( Display*, char[32] )) dlsym( RTLD_NEXT, "XQueryKeymap" );
++    if( event->type == XFocusIn || event->type == XKeyPress || event->type == XKeyRelease )
++        real_xquerykeymap( dpy, xquerykeymap_data );
++    if( event->type == XFocusOut )
++        memset( xquerykeymap_data, 0, 32 );
++}
++
++extern "C" KDE_EXPORT
++int XQueryKeymap( Display* , char k[32] )
++{
++    memcpy( k, xquerykeymap_data, 32 );
++    return 1;
++}
++
++
+ #include "qxteventloop.moc"
+ 
+ #endif
hunk ./source/kde/kdebase/FrugalBuild 7
-pkgrel=3terminus2
+pkgrel=3terminus3
hunk ./source/kde/kdebase/FrugalBuild 38
-	ftp://ftp.kde.org/pub/kde/security_patches/post-3.5.7-kdebase-kdm.diff)
+	ftp://ftp.kde.org/pub/kde/security_patches/post-3.5.7-kdebase-kdm.diff \
+	CVE-2007-2022.diff)
hunk ./source/kde/kdebase/FrugalBuild 104
-          'b270a1d5b3980f49a274308bec7fc649be1bd315')
+          'b270a1d5b3980f49a274308bec7fc649be1bd315' \
+          'b01ae84a81367774443c56f44fabf66830808962')
}


More information about the Frugalware-darcs mailing list