packages: qt4/qt4.spec, qt4/qt4-kde-git.patch (NEW), qt4/0118-qtcopy-define...

arekm arekm at pld-linux.org
Mon Oct 12 09:48:28 CEST 2009


Author: arekm                        Date: Mon Oct 12 07:48:28 2009 GMT
Module: packages                      Tag: HEAD
---- Log message:
rel 4; replace qt-copy patches with kde-qt branch

---- Files affected:
packages/qt4:
   qt4.spec (1.225 -> 1.226) , qt4-kde-git.patch (NONE -> 1.1)  (NEW), 0118-qtcopy-define.diff (1.1 -> NONE)  (REMOVED), 0180-window-role.diff (1.1 -> NONE)  (REMOVED), 0195-compositing-properties.diff (1.1 -> NONE)  (REMOVED), 0209-prevent-qt-mixing.diff (1.1 -> NONE)  (REMOVED), 0216-allow-isystem-for-headers.diff (1.1 -> NONE)  (REMOVED), 0225-invalidate-tabbar-geometry-on-refresh.patch (1.1 -> NONE)  (REMOVED), 0253-qmake_correct_path_separators.diff (1.1 -> NONE)  (REMOVED), 0255-qtreeview-selection-columns-hidden.diff (1.2 -> NONE)  (REMOVED), 0269-msvc-webkit-compile.diff (1.1 -> NONE)  (REMOVED), 0280-deserialization-custom-dbus-properties.diff (1.1 -> NONE)  (REMOVED), 0283-do-not-deduce-scrollbar-extent-twice.diff (1.1 -> NONE)  (REMOVED), 0285-qgv-dontshowchildren.diff (1.1 -> NONE)  (REMOVED)

---- Diffs:

================================================================
Index: packages/qt4/qt4.spec
diff -u packages/qt4/qt4.spec:1.225 packages/qt4/qt4.spec:1.226
--- packages/qt4/qt4.spec:1.225	Sat Oct  3 17:19:18 2009
+++ packages/qt4/qt4.spec	Mon Oct 12 09:48:22 2009
@@ -77,7 +77,7 @@
 Summary(pt_BR.UTF-8):	Estrutura para rodar aplicações GUI Qt
 Name:		qt4
 Version:	4.5.3
-Release:	3
+Release:	4
 License:	LGPL v2.1 or GPL v3.0
 Group:		X11/Libraries
 Source0:	http://download.qtsoftware.com/qt/source/qt-x11-opensource-src-%{version}.tar.gz
@@ -87,18 +87,10 @@
 Source4:	%{name}-assistant.desktop
 Source5:	%{name}-linguist.desktop
 
-Patch100:	0118-qtcopy-define.diff
-Patch101:	0180-window-role.diff
-Patch102:	0195-compositing-properties.diff
-Patch103:	0209-prevent-qt-mixing.diff
-Patch104:	0216-allow-isystem-for-headers.diff
-Patch105:	0225-invalidate-tabbar-geometry-on-refresh.patch
-Patch108:	0280-deserialization-custom-dbus-properties.diff
-Patch109:	0253-qmake_correct_path_separators.diff
-Patch110:	0255-qtreeview-selection-columns-hidden.diff
-Patch111:	0269-msvc-webkit-compile.diff
-Patch115:	0283-do-not-deduce-scrollbar-extent-twice.diff
-Patch116:	0285-qgv-dontshowchildren.diff
+# git clone git://gitorious.org/+kde-developers/qt/kde-qt.git
+# git checkout -b 4.5.3-patched origin/4.5.3-patched
+# git diff v4.5.3..4.5.3-patched > qt4-kde-git.patch
+Patch100:	%{name}-kde-git.patch
 
 Patch0:		%{name}-tools.patch
 Patch1:		%{name}-qt_copy.patch
@@ -1319,18 +1311,7 @@
 %prep
 %setup -q -n qt-x11-opensource-src-%{version}
 
-%patch100 -p0
-%patch101 -p0
-%patch102 -p0
-%patch103 -p0
-%patch104 -p0
-%patch105 -p0
-%patch108 -p0
-%patch109 -p0
-%patch110 -p0
-%patch111 -p0
-%patch115 -p0
-%patch116 -p0
+%patch100 -p1
 
 %patch0 -p1
 %patch1 -p0
@@ -2199,6 +2180,9 @@
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.226  2009/10/12 07:48:22  arekm
+rel 4; replace qt-copy patches with kde-qt branch
+
 Revision 1.225  2009/10/03 15:19:18  arekm
 - rel 3; translations are back
 

================================================================
Index: packages/qt4/qt4-kde-git.patch
diff -u /dev/null packages/qt4/qt4-kde-git.patch:1.1
--- /dev/null	Mon Oct 12 09:48:29 2009
+++ packages/qt4/qt4-kde-git.patch	Mon Oct 12 09:48:22 2009
@@ -0,0 +1,1593 @@
+diff --git a/README.kde-qt b/README.kde-qt
+new file mode 100644
+index 0000000..db3feb6
+--- /dev/null
++++ b/README.kde-qt
+@@ -0,0 +1,201 @@
++This is a patched version of Qt.  It may include changes made by KDE
++and Qt developers that have either not been accepted for inclusion
++into Qt, or have been accepted for a later version of Qt than this
++one.
++
++1. Configuring Qt
++=================
++
++The recommended compile line is:
++
++--default-config-begin--
++
++  ./configure -qt-gif -debug -fast -no-separate-debug-info \
++     -system-libpng -system-libjpeg -system-zlib \
++     -dbus -webkit -plugin-sql-mysql \
++     -nomake examples -nomake demos -prefix <installdir>
++
++--default-config-end--
++
++It contains "-debug", which greatly improves the use for backtraces (but
++also needs a lot more disk space and makes things slower). To build in
++release mode, replace it with "-release".
++
++It also contains "-no-separate-debug-info", which disables separate .debug
++files. Instead, the debug information will be built into the libraries.
++This option is needed when you install Qt.
++
++If you don't install Qt, it can be useful to disable this option,
++thus having separate debug symbol files. With separate debug files, you can
++just move those debug files to another directory to remove Qt debug symbols.
++Moving the files back will enable Qt debug symbols again.
++This is useful if you rarely need to step into Qt functions during debugging,
++because GDB loads much faster and uses less memory without Qt debug symbols.
++In the rare case you need to step into Qt code, you can temporarily enable
++debug symbols again by moving the debug files back. You can even load the Qt
++debug symbols from within GDB on demand, using the "symbol-file" command.
++
++If you are planning to compile Qt using an Icecream cluster you have to
++pass the option -no-pch (no precompiled headers) to configure to make
++distributed compilation work.
++
++2. Compiling Qt
++===============
++
++To compile Qt on a Unix platform, run:
++
++   export MAKEFLAGS=-j2
++   make
++   make install
++
++If your computer has more than one core or processor, you may consider
++increasing the "2" above. If you've got a compile farm available, you
++should adjust the -j argument to match the number of slots in that
++farm.
++
++3. Modifying & rebuilding Qt
++============================
++
++If you make modifications to the Qt source code, you don't need to
++build everything again. Simply go to the directory containing the
++Makefile closest to the files you changed and run "make" again.
++
++For example, if you've modified src/corelib/io/qiodevice.cpp, do:
++
++   cd src/corelib
++   make
++
++If you make a change that is not temporary, you should create a Git
++commit out of it. However, you shouldn't push those changes to
++kde-qt.git. If you have a fix that benefit others, see the "Creating
++kde-qt.git modifications" section below.
++
++4. Building Qt examples and demos
++=================================
++
++The "-nomake examples -nomake demos" arguments to the configure script
++mean that those two sections will not be configured for building,
++which is unneeded for usage of the library.  If you want to compile
++the examples or demos later, just enter either directory and type:
++
++   qmake
++   make
++
++5. Build Qt tests
++=================
++
++(Official information: http://qt.gitorious.org/qt/pages/QtAutotestsEnvironment)
++
++In order to run Qt tests, you must have a "developer build" of Qt. For
++that, you need to reconfigure Qt and add the "-developer-build"
++option. That option is technically equivalent to the options:
++
++   -debug -prefix $PWD -DQT_BUILD_INTERNAL
++
++To run a test, go to its source dir in tests/auto/testname. Type
++"make" to build it, then run it (either ./tst_testname, or "make install").
++
++6. Building Qt documentation
++============================
++
++To build and install the documentation, run:
++
++   make docs
++   ./config.status
++   make install
++
++It is necessary to do this once only, even if you rebuild Qt later.
++
++7. Using Qt uninstalled
++=======================
++
++To use without having to install it, configure it as follows:
++
++   ./configure <other configure options>  -prefix $PWD
++   make sub-src
++   make sub-tools
++
++Attention: DO NOT run
++
++   make install
++
++If you do, Qt will overwrite your include/ directory with its
++installation.
++
++8. Creating kde-qt.git modifications
++====================================
++
++If you have fixed a bug in Qt or modified it in any way that may
++benefit others, please share your change in the form of a patch. Do
++not commit your changes directly to the main branch because they
++may be lost in a future update if they have not been added to the
++official Qt release.
++
++The exception to the above rule is that if the fix has been accepted
++by Qt Software (and so will appear in the very next release of Qt),
++then it should be simply cherry-picked from the Qt development
++branch. Note that you shouldn't do this for changes that have been
++accepted into a release which is not the very next.
++In this case, you should use the following command:
++
++   git cherry-pick -x SHA1_OF_THE_FIX
++where SHA1_OF_THE_FIX is the SHA-1 of the commit that you want to
++introduce. Then push the change to the server.
++
++Before creating a patch, it is recommended to contact Qt Software
++support via qt-bugs at trolltech.com and explain the situation. There may
++be a solution for the problem already or a new direction that should
++be accounted for.
++
++To create a patch, do the following:
++  a) look at the listing of branches in
++  http://qt.gitorious.org/+kde-developers/qt/kde-qt/commits/HEAD and
++  select the next number.
++
++  b) create a new branch out of a clean, released version of Qt, (for
++  example, 4.5.1), using the number above and a brief description of
++  your fix. For example:
++      git checkout -b patches/0180-window-role v4.5.1
++  You can see the available released versions of Qt with:
++      git tag
++
++  c) make your changes to the Qt source code and verify that it
++  compiles, links and works (please run the respective unit tests).
++
++  c) commit your changes to Git, using the "git commit" command. Please
++  see http://qt.gitorious.org/qt/pages/GitIntroductionWithQt and
++  http://qt.gitorious.org/qt/pages/QtCodingStyle for information on
++  how to create commits
++  Note that you can create multiple commits.
++
++  e) merge the change to the main branch, for example, 4.5.1-patched:
++      git checkout 4.5.1-patched
++      git merge patches/0180-window-role
++
++  f) push the changes you made to your branch and to the main server:
++      git push git at gitorious.org:qt/kde-qt.git 4.5.1-patched patches/0180-window-role
++  (Don't forget to list both branch names)
++
++Don't forget to submit your patch to using the Qt Contribution Model,
++along with the long description of the issue found. See
++http://qt.gitorious.org/qt/pages/QtContributionGuidelines for
++information how. You can submit the branch you've just sent to the
++server.
++
++9. Troubleshooting: Re-configuring and re-compiling
++==================================================
++
++For those updating the source in a directory where Qt has already
++been compiled, you may need to run the following commands from the
++top directory of your Qt sources:
++
++	find . -name '*.moc' | xargs rm
++
++Sometimes ./configure will refuse to run.  You may need to:
++	rm .qmake.cache
++
++If you think you may have run "make install" on an install-less Qt
++(srcdir == $QTDIR), run:
++
++	rm -rf include
++	bin/syncqt
+diff --git a/bin/syncqt b/bin/syncqt
+index edabeca..e71d480 100755
+--- a/bin/syncqt
++++ b/bin/syncqt
+@@ -363,9 +363,13 @@ sub fixPaths {
+         $match_dir = $tmp;
+         $i = $slash;
+     }
++    my $cnt_ofs = 0;
++    if($match_dir =~ /^[a-zA-Z]:$/) {
++      $cnt_ofs = 1;
++    }
+     if($match_dir) {
+         my $after = substr($dir, length($match_dir));
+-        my $count = ($after =~ tr,/,,);
++        my $count = ($after =~ tr,/,,) - $cnt_ofs;
+         my $dots = "";
+         for(my $i = 0; $i < $count; $i++) {
+             $dots .= "../";
+diff --git a/configure b/configure
+index 4ea1ad0..b28a1fa 100755
+--- a/configure
++++ b/configure
+@@ -960,6 +960,11 @@ while [ "$#" -gt 0 ]; do
+             VAL=`echo $1 | sed 's,-D,,'`
+         fi
+         ;;
++    -isystem)
++        VAR="add_isystempath"
++        shift
++        VAL="$1"
++        ;;
+     -I?*|-I)
+         VAR="add_ipath"
+         if [ "$1" = "-I" ]; then
+@@ -1930,6 +1935,9 @@ while [ "$#" -gt 0 ]; do
+     add_ipath)
+         I_FLAGS="$I_FLAGS -I\"${VAL}\""
+         ;;
++    add_isystempath)
++        I_FLAGS="$I_FLAGS -isystem \"${VAL}\""
++        ;;
+     add_lpath)
+         L_FLAGS="$L_FLAGS -L\"${VAL}\""
+         ;;
+diff --git a/projects.pro b/projects.pro
+index f6c596d..79420d2 100644
+--- a/projects.pro
++++ b/projects.pro
+@@ -131,6 +131,9 @@ unix {
+    DEFAULT_QMAKESPEC ~= s,^.*mkspecs/,,g
+    mkspecs.commands += $(DEL_FILE) $(INSTALL_ROOT)$$mkspecs.path/default; $(SYMLINK) $$DEFAULT_QMAKESPEC $(INSTALL_ROOT)$$mkspecs.path/default
+ }
++win32 {
++   mkspecs.files += $$QT_BUILD_TREE/mkspecs/default
++}
+ INSTALLS += mkspecs
+ 
+ false:macx { #mac install location
+diff --git a/qmake/property.cpp b/qmake/property.cpp
+index ea4842a..ac54854 100644
+--- a/qmake/property.cpp
++++ b/qmake/property.cpp
+@@ -81,29 +81,32 @@ QMakeProperty::keyBase(bool version) const
+ QString
+ QMakeProperty::value(QString v, bool just_check)
+ {
++    QString ret;
+     if(v == "QT_INSTALL_PREFIX")
+-        return QLibraryInfo::location(QLibraryInfo::PrefixPath);
++        ret = QLibraryInfo::location(QLibraryInfo::PrefixPath);
+     else if(v == "QT_INSTALL_DATA")
+-        return QLibraryInfo::location(QLibraryInfo::DataPath);
++        ret = QLibraryInfo::location(QLibraryInfo::DataPath);
+     else if(v == "QT_INSTALL_DOCS")
+-        return QLibraryInfo::location(QLibraryInfo::DocumentationPath);
++        ret = QLibraryInfo::location(QLibraryInfo::DocumentationPath);
+     else if(v == "QT_INSTALL_HEADERS")
+-        return QLibraryInfo::location(QLibraryInfo::HeadersPath);
++        ret = QLibraryInfo::location(QLibraryInfo::HeadersPath);
+     else if(v == "QT_INSTALL_LIBS")
+-        return QLibraryInfo::location(QLibraryInfo::LibrariesPath);
++        ret = QLibraryInfo::location(QLibraryInfo::LibrariesPath);
+     else if(v == "QT_INSTALL_BINS")
+-        return QLibraryInfo::location(QLibraryInfo::BinariesPath);
++        ret = QLibraryInfo::location(QLibraryInfo::BinariesPath);
+     else if(v == "QT_INSTALL_PLUGINS")
+-        return QLibraryInfo::location(QLibraryInfo::PluginsPath);
++        ret = QLibraryInfo::location(QLibraryInfo::PluginsPath);
+     else if(v == "QT_INSTALL_TRANSLATIONS")
+-        return QLibraryInfo::location(QLibraryInfo::TranslationsPath);
++        ret = QLibraryInfo::location(QLibraryInfo::TranslationsPath);
+     else if(v == "QT_INSTALL_CONFIGURATION")
+-        return QLibraryInfo::location(QLibraryInfo::SettingsPath);
++        ret = QLibraryInfo::location(QLibraryInfo::SettingsPath);
+     else if(v == "QT_INSTALL_EXAMPLES")
+-        return QLibraryInfo::location(QLibraryInfo::ExamplesPath);
++        ret = QLibraryInfo::location(QLibraryInfo::ExamplesPath);
+     else if(v == "QT_INSTALL_DEMOS")
+-        return QLibraryInfo::location(QLibraryInfo::DemosPath);
+-    else if(v == "QMAKE_MKSPECS")
++        ret = QLibraryInfo::location(QLibraryInfo::DemosPath);
++    if(!ret.isEmpty())
++        return QDir::toNativeSeparators(ret);
++    if(v == "QMAKE_MKSPECS")
+         return qmake_mkspec_paths().join(Option::target_mode == Option::TARG_WIN_MODE ? ";" : ":");
+     else if(v == "QMAKE_VERSION")
+         return qmake_version();
+@@ -116,7 +119,7 @@ QMakeProperty::value(QString v, bool just_check)
+     int slash = v.lastIndexOf('/');
+     QVariant var = settings->value(keyBase(slash == -1) + v);
+     bool ok = var.isValid();
+-    QString ret = var.toString();
++    ret = var.toString();
+     if(!ok) {
+         QString version = qmake_version();
+         if(slash != -1) {
+diff --git a/src/corelib/global/qnamespace.h b/src/corelib/global/qnamespace.h
+index ac2ad34..58d7df0 100644
+--- a/src/corelib/global/qnamespace.h
++++ b/src/corelib/global/qnamespace.h
+@@ -895,12 +895,10 @@ public:
+         Key_Dead_Horn           = 0x01001262,
+ 
+         // multimedia/internet keys - ignored by default - see QKeyEvent c'tor
+-
+         Key_Back  = 0x01000061,
+         Key_Forward  = 0x01000062,
+         Key_Stop  = 0x01000063,
+         Key_Refresh  = 0x01000064,
+-
+         Key_VolumeDown = 0x01000070,
+         Key_VolumeMute  = 0x01000071,
+         Key_VolumeUp = 0x01000072,
+@@ -909,7 +907,6 @@ public:
+         Key_BassDown = 0x01000075,
+         Key_TrebleUp = 0x01000076,
+         Key_TrebleDown = 0x01000077,
+-
+         Key_MediaPlay  = 0x01000080,
+         Key_MediaStop  = 0x01000081,
+         Key_MediaPrevious  = 0x01000082,
+@@ -918,13 +915,11 @@ public:
+ #endif
+         Key_MediaNext  = 0x01000083,
+         Key_MediaRecord = 0x01000084,
+-
+         Key_HomePage  = 0x01000090,
+         Key_Favorites  = 0x01000091,
+         Key_Search  = 0x01000092,
+         Key_Standby = 0x01000093,
+         Key_OpenUrl = 0x01000094,
+-
+         Key_LaunchMail  = 0x010000a0,
+         Key_LaunchMedia = 0x010000a1,
+         Key_Launch0  = 0x010000a2,
+@@ -943,6 +938,98 @@ public:
+         Key_LaunchD  = 0x010000af,
+         Key_LaunchE  = 0x010000b0,
+         Key_LaunchF  = 0x010000b1,
++        Key_MonBrightnessUp = 0x010000b2,
++        Key_MonBrightnessDown = 0x010000b3,
++        Key_KeyboardLightOnOff = 0x010000b4,
++        Key_KeyboardBrightnessUp = 0x010000b5,
++        Key_KeyboardBrightnessDown = 0x010000b6,
++        Key_PowerOff = 0x010000b7,
++        Key_WakeUp = 0x010000b8,
++        Key_Eject = 0x010000b9,
++        Key_ScreenSaver = 0x010000ba,
++        Key_WWW = 0x010000bb,
++        Key_Memo = 0x010000bc,
++        Key_LightBulb = 0x010000bd,
++        Key_Shop = 0x010000be,
++        Key_History = 0x010000bf,
++        Key_AddFavorite = 0x010000c0,
++        Key_HotLinks = 0x010000c1,
++        Key_BrightnessAdjust = 0x010000c2,
++        Key_Finance = 0x010000c3,
++        Key_Community = 0x010000c4,
++        Key_AudioRewind = 0x010000c5,
++        Key_BackForward = 0x010000c6,
++        Key_ApplicationLeft = 0x010000c7,
++        Key_ApplicationRight = 0x010000c8,
++        Key_Book = 0x010000c9,
++        Key_CD = 0x010000ca,
++        Key_Calculator = 0x010000cb,
++        Key_ToDoList = 0x010000cc,
++        Key_ClearGrab = 0x010000cd,
++        Key_Close = 0x010000ce,
++        Key_Copy = 0x010000cf,
++        Key_Cut = 0x010000d0,
++        Key_Display = 0x010000d1,
++        Key_DOS = 0x010000d2,
++        Key_Documents = 0x010000d3,
++        Key_Excel = 0x010000d4,
++        Key_Explorer = 0x010000d5,
++        Key_Game = 0x010000d6,
++        Key_Go = 0x010000d7,
++        Key_iTouch = 0x010000d8,
++        Key_LogOff = 0x010000d9,
++        Key_Market = 0x010000da,
++        Key_Meeting = 0x010000db,
++        Key_MenuKB = 0x010000dc,
++        Key_MenuPB = 0x010000dd,
++        Key_MySites = 0x010000de,
++        Key_News = 0x010000df,
++        Key_OfficeHome = 0x010000e0,
++        Key_Option = 0x010000e1,
++        Key_Paste = 0x010000e2,
++        Key_Phone = 0x010000e3,
++        Key_Calendar = 0x010000e4,
++        Key_Reply = 0x010000e5,
++        Key_Reload = 0x010000e6,
++        Key_RotateWindows = 0x010000e7,
++        Key_RotationPB = 0x010000e8,
++        Key_RotationKB = 0x010000e9,
++        Key_Save = 0x010000ea,
++        Key_Send = 0x010000eb,
++        Key_Spell = 0x010000ec,
++        Key_SplitScreen = 0x010000ed,
++        Key_Support = 0x010000ee,
++        Key_TaskPane = 0x010000ef,
++        Key_Terminal = 0x010000f0,
++        Key_Tools = 0x010000f1,
++        Key_Travel = 0x010000f2,
++        Key_Video = 0x010000f3,
++        Key_Word = 0x010000f4,
++        Key_Xfer = 0x010000f5,
++        Key_ZoomIn = 0x010000f6,
++        Key_ZoomOut = 0x010000f7,
++        Key_Away = 0x010000f8,
++        Key_Messenger = 0x010000f9,
++        Key_WebCam = 0x010000fa,
++        Key_MailForward = 0x010000fb,
++        Key_Pictures = 0x010000fc,
++        Key_Music = 0x010000fd,
++        Key_Battery = 0x010000fe,
++        Key_Bluetooth = 0x010000ff,
++        Key_WLAN = 0x01000100,
++        Key_UWB = 0x01000101,
++        Key_AudioForward = 0x01000102,
++        Key_AudioRepeat = 0x01000103,
++        Key_AudioRandomPlay = 0x01000104,
++        Key_Subtitle = 0x01000105,
++        Key_AudioCycleTrack = 0x01000106,
++        Key_Time = 0x01000107,
++        Key_Hibernate = 0x01000108,
++        Key_View = 0x01000109,
++        Key_TopMenu = 0x0100010a,
++        Key_PowerDown = 0x0100010b,
++        Key_Suspend = 0x0100010c,
++        Key_ContrastAdjust = 0x0100010d,
+ 
+         Key_MediaLast = 0x0100ffff,
+ 
+diff --git a/src/corelib/kernel/qeventdispatcher_glib.cpp b/src/corelib/kernel/qeventdispatcher_glib.cpp
+index 87e9728..7f6dbb6 100644
+--- a/src/corelib/kernel/qeventdispatcher_glib.cpp
++++ b/src/corelib/kernel/qeventdispatcher_glib.cpp
+@@ -127,16 +127,11 @@ struct GTimerSource
+     GSource source;
+     QTimerInfoList timerList;
+     QEventLoop::ProcessEventsFlags processEventsFlags;
++    bool runWithIdlePriority;
+ };
+ 
+-static gboolean timerSourcePrepare(GSource *source, gint *timeout)
++static gboolean timerSourcePrepareHelper(GTimerSource *src, gint *timeout)
+ {
+-    gint dummy;
+-    if (!timeout)
+-        timeout = &dummy;
+-
+-    GTimerSource *src = reinterpret_cast<GTimerSource *>(source);
+-
+     timeval tv = { 0l, 0l };
+     if (!(src->processEventsFlags & QEventLoop::X11ExcludeTimers) && src->timerList.timerWait(tv))
+         *timeout = (tv.tv_sec * 1000) + (tv.tv_usec / 1000);
+@@ -146,10 +141,8 @@ static gboolean timerSourcePrepare(GSource *source, gint *timeout)
+     return (*timeout == 0);
+ }
+ 
+-static gboolean timerSourceCheck(GSource *source)
++static gboolean timerSourceCheckHelper(GTimerSource *src)
+ {
+-    GTimerSource *src = reinterpret_cast<GTimerSource *>(source);
+-
+     if (src->timerList.isEmpty()
+         || (src->processEventsFlags & QEventLoop::X11ExcludeTimers))
+         return false;
+@@ -160,9 +153,35 @@ static gboolean timerSourceCheck(GSource *source)
+     return true;
+ }
+ 
++static gboolean timerSourcePrepare(GSource *source, gint *timeout)
++{
++    gint dummy;
++    if (!timeout)
++        timeout = &dummy;
++
++    GTimerSource *src = reinterpret_cast<GTimerSource *>(source);
++    if (src->runWithIdlePriority) {
++        if (timeout)
++            *timeout = -1;
++        return false;
++    }
++
++    return timerSourcePrepareHelper(src, timeout);
++}
++
++static gboolean timerSourceCheck(GSource *source)
++{
++    GTimerSource *src = reinterpret_cast<GTimerSource *>(source);
++    if (src->runWithIdlePriority)
++        return false;
++    return timerSourceCheckHelper(src);
++}
<<Diff was trimmed, longer than 597 lines>>

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/qt4/qt4.spec?r1=1.225&r2=1.226&f=u



More information about the pld-cvs-commit mailing list