Commit Graph

14093 Commits

Author SHA1 Message Date
Tor Arne Vestbø
9a061a0a2c Remove unused member in QEventLoop auto-test
Change-Id: Icd6a09402c3cf14286f4ba1f8f4c99ac483ec1a3
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-08-06 22:04:11 +02:00
Sergio Ahumada
08d3b0165a test: Mark tst_QRawFont::fromFont() as XFAIL
Mark some tests as expected failures on OS X 10.8

 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=0, writingSystem=0)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=0, writingSystem=5)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=0, writingSystem=1)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=1, writingSystem=0)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=1, writingSystem=5)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=1, writingSystem=1)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=2, writingSystem=0)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=2, writingSystem=5)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=2, writingSystem=1)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=3, writingSystem=0)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=3, writingSystem=5)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=3, writingSystem=1)

Task-number: QTBUG-32654
Change-Id: I46d64852ccb751824a2eff68513389baa52c1baf
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-08-06 22:04:11 +02:00
Thiago Macieira
dae087b30f Avoid one extra if_indextoname per address in QNetworkInterface
Given an IPv6 address associated with a network interface, there's a
fairly high chance (of 100%) that any scope ID found is that of the
interface.

Change-Id: Id7315473f39b68ee4c169207168dc2e60fd7d570
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
Reviewed-by: Jonas Gastal <gastal@intel.com>
2013-08-06 19:47:45 +02:00
Thiago Macieira
7a3653887c Remove unused socket from QNetworkInterface Unix code
This must be a relic from old code, before I split out the code that
uses getifaddrs from the code that doesn't.

Change-Id: Ia1265da6921c7c7a3dc97315d98fed50b3d2fe1c
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
Reviewed-by: Jonas Gastal <gastal@intel.com>
2013-08-06 19:47:14 +02:00
Frederik Gladhorn
521f2163b1 Fix typos
Change-Id: I27cbcd8c59bdc34493931f341341cc25b4aba9e7
Reviewed-by: Kurt Pattyn <pattyn.kurt@gmail.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-08-06 11:08:49 +02:00
Eskil Abrahamsen Blomfeldt
c84114acee Android: Fix crash when compiling release mode for armv5
When building in thumb mode for armv5 applications will crash
with SIGILL on startup. This has been observed on armv7 devices
and emulators. It could be a bug in the gcc 4.4.3 toolchain, but
since the other toolchains in the NDK have other bugs that
make it impossible to use them for building, we need to disable
thumb until the cross-compiler has been fixed.

Task-number: QTBUG-31338
Change-Id: I22dd228158ef8c43b0b1d6e549d5725c1930536b
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-08-06 11:08:49 +02:00
Sergio Ahumada
79d7fd924e tst_qfilesystemmodel: increased test's permitted runtime
This test has recently timed out a few times on OS X test runs, with
no relevant changes to account for the timeout.

Task-number: QTBUG-27890
Change-Id: Ia24f7812ed2a0b3eac51847a7dacbc9f225b48b8
Reviewed-by: Simo Fält <simo.falt@digia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
2013-08-06 08:30:20 +02:00
Thiago Macieira
586ab8edb5 Fix clang detection of thread_local variables
The "0" must have been added because there was no __has_feature for
the feature back in the day. Now it exists.

Change-Id: I50f0544ae82a8be54a8d26da400e31c1906dad9e
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-08-06 01:59:04 +02:00
Oswald Buddenhagen
6901d21c1d reject unrecognized -no-l* options
the -l* fallback is for adding libraries. it obviously makes no sense in
its negated form.

Task-number: QTBUG-32550
Change-Id: I9f3af9a2fc059ba39987d4b197ed4778cc7f35b6
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2013-08-05 20:15:53 +02:00
Andreas Aardal Hanssen
8fce4e97ba Fix double transform for items ignoring parent transformations.
Previously, the topmost untransformable's scene transform, which
includes the item's position and local transformation, was used to
determine the item's anchoring position. This position was then
passed on to be multiplied by the item's transform again. This
works fine for toplevel untransformable items that don't have any
transform set at all, but those who do would have their transforms
applied twice - one to determine the anchoring position, and again
to transform the item itself. Since only translation transformations
can affect the first operation (the anchoring pos), this bug only
applies to items that set ItemIgnoresTransformations and use a
local transform that includes translation.

Task-number: QTBUG-21618
Change-Id: I772d52d59dfd9f242d0140632a87e9c68dfe0ea1
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2013-08-05 20:15:53 +02:00
Tor Arne Vestbø
12571cc095 Fix tst_QFile::caseSensitivity on OS X
By not assuming that the file system is case insensitive. OSX supports
both.

Change-Id: I11a4ac4cdff97b97b183dd319757a42ae14bb52d
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-08-05 17:20:13 +02:00
Tor Arne Vestbø
9370f50f2c Add Info.plist templates for the macx-icc makespec
Task-number: QTBUG-31355
Change-Id: Iea2ac2a072bbd2c0104f0704a86503c0982fb886
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-08-05 17:11:15 +02:00
Tor Arne Vestbø
d66d912c53 Fix tst_QCompleter::directoryModel() on OS X
By not assuming that we have the '/Developer' directory at the root
of the file system. 'Users' is less likely to be removed/deprecated.

Change-Id: I659bdb67cfb1ed2f73bc643ba4afe1f1f89d5bc5
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-08-05 16:53:17 +02:00
Sergio Ahumada
8c35db5c72 configure: Fix xkbcommon summary output
On systems where xkbcommon >= 0.2.0 the output should be

  xkbcommon .............. yes (system library)

instead of

  xkbcommon .............. yes

Change-Id: I5807946e61814d414a68a15ad96c91f25c9482ee
Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-08-05 13:26:15 +02:00
Sergio Ahumada
13d7823ef7 tests: Enable some itemmodels tests that don't depend on Qt Widgets
Make qabstractproxymodel and qidentityproxymodel build and run
even if -no-widgets is used since they don't depend on Qt Widgets.

Change-Id: I48bc2f6a78812b1bf0083f76c6a4e106f4e38650
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-08-05 13:26:15 +02:00
Mitch Curtis
c0f51fb1d0 Fix typo in Model/View Programming documentation.
Change-Id: I88f49a894a8c1e88a4cdb559fdc426f01e113f80
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
2013-08-05 10:56:03 +02:00
Daiwei Li
bbf19fb295 Fix ignoring closeEvents on OSX for QtQuick.
The QCloseEvent's accepted state should not be inverted for the
QWindowSystemInterfacePrivate::CloseEvent. To make Widgets work
with this change, pass whether the close was accepted from close_helper
to the QCloseEvent generated by QGuiApplication.

Task-number: QTBUG-28965

Change-Id: If384b0355776b93df02dff2ab78b5647903200e7
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Josh Faust <jfaust@suitabletech.com>
2013-08-03 21:51:38 +02:00
David Faure
672fcbe9c6 QMimeDatabase: Fix handling of duplicate mimetype definitions (2/2).
7721c3d27c fixed the case where two similar definitions are in the same
directory. This commit fixes the case where two similar definitions are
in different directories, both in the search path (GenericDataLocation).

If the file extension gives us the same mimetype twice, there's no conflict,
i.e. no reason to fallback to determination from contents.

Change-Id: I72c56004b6d5e88964159e53ec160ce8b06c2264
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-08-03 14:44:12 +02:00
David Faure
be8974633c Doc: porting from QDesktopServices::DataLocation to QStandardPaths
Change-Id: Ifd96db46cc8d0170b136a9e3154ed37ebe6ad830
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2013-08-03 10:31:47 +02:00
Jorgen Lind
03285044a0 Add how to create a udev rule for the evdev plugins
Change-Id: Icd7a192701958673fe216f40ddab710f5f63a8b8
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
2013-08-02 21:00:23 +02:00
Samuli Piippo
bb05c4129e Fix CapsLock handling in EvdevKeyboard plugin
CapsLock was incorrectly handled in EvdevKeyboard, which led non-letter
keys to be masked with Qt::ShiftModifier. The default builtin keymap
is modified to have IsLetter flags for correct keys.

Task-number: QTBUG-32560

Change-Id: I561bbad7bcffe1f4c4bbed7bf72106b689e57fe0
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
2013-08-02 21:00:23 +02:00
Shawn Rutledge
c6e32b740c OSX: do not force a plain window to be on the same level as its parent
2af0a778f464980594c36098e4a8ba4448edfd29 the fix for QTBUG-27410
caused this Designer bug.  Doing the automatic level escalation only
for "special" windows and avoiding it for plain Qt::Window type
windows is one way of fixing the Designer problem.

Task-number: QTBUG-31779
Change-Id: I1da5454f31111f36480fac3b53be6d5f0ce40047
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-08-02 18:20:09 +02:00
Gatis Paeglis
b59c257a04 Fix stuck modifier issue in the non-xcb_xkb code path
Since updating the xkb_state throght core events is more
tricky (opposed to the xcb-xkb code path) where we have
to use xkb_state_update_key, we need to make sure that our
local state is in sync with the X server's state.

The local state was getting out of sync if key was pressed
down in a Qt application and released in other X client (by
changing the focus to another window with a mouse, for
example).

Task-number: QTBUG-32660
Change-Id: I662bf5aad3ab0e8591109994e746d85ff61ad6ef
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-08-02 08:19:59 +02:00
Jake Petroules
e440b35bb3 Update Info.plist templates to use the current standard plist format.
Change the version number to 1.0, and use the public doctype.

Change-Id: I9b071c80c410c31c38813c4447edd7b186226fab
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-08-02 05:42:37 +02:00
Stephen Kelly
49869f2a7d Fix typo form->from
Change-Id: Ifa47cec0e454228d33c917c0baa6d0686955af5a
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-07-31 22:03:27 +02:00
Sérgio Martins
0ec917123f Fix build with QT_NO_CURSOR.
Just moved applyCursor() and defaultCursor() to a #ifndef block.

Change-Id: I14c21aa509395fb1bd72d389cfc46f0f34ab7649
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-07-31 15:04:58 +02:00
Sérgio Martins
c707bb4414 Don't run this code on WinCE, the variable will be unused.
Change-Id: Id472e6e18759227943a24aa723963671bdb52164
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-07-31 15:04:48 +02:00
Sergio Ahumada
ded8c6a08f configure: Fix qtwebkit-examples-and-demos -> qtwebkit-examples
Change-Id: I950912a883c263ee4bbae4d1da53c66aa870be70
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-07-31 14:52:07 +02:00
Samuli Piippo
c837dbecdd eglfs: allow egl native window to be zero
Change the checking for created EGLNativeWindowType so that zero
is a valid value. This is the case e.g, with BeagleBoard, where
widget application cannot be run without this change.

Change-Id: I36c30091e1a5a0598ae3822d0be8dc4362779c0b
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-07-31 14:42:13 +02:00
Andy Shaw
22fbb5be6e Clear focus if the widget being deleted is the parent's focus child.
If a widget is deleted as a result of a window activation changed then
it is possible that the parent does not clear the focus because of the
activation change. If the focus child is actually part of an embedded
widget in the graphicsview then it needs to be handled explicitly in
this case too.

Change-Id: I3e7a2b963f175828de4c19283178560abca91235
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Andreas Aardal Hanssen <andreas@hanssen.name>
2013-07-31 10:46:41 +02:00
Stephen Kelly
d9ea4bb144 Mark qt5_use_modules as obsolete.
Forward-port of cb7f32f5b861fe115fa71f64500a5cbb0b643f1b (Mark
qt4_use_modules and qt4_automoc as obsolete., 2013-07-04) from
cmake.git.

Change-Id: I0c24408ef06bc93eb0e55108cf4eab2f8cbd19cb
Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-07-31 10:44:49 +02:00
Eskil Abrahamsen Blomfeldt
87a30db468 eglfs: Fix updates when resizing backing store
We would resize the backing store without resizing the viewport,
which would cause all subsequent blits of the backing store to the
screen to look broken.

Task-number: QTBUG-32146
Change-Id: I65bae051b7cfbbc61fc285e4baa74685d5639569
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-07-31 10:44:49 +02:00
Andy Shaw
f29bbbde5f Check if the widgetItem is valid before accessing widget() on it
If a state was restored but not all the dockwidgets that were available
before are available at the time of restoration then when dragging a
dockwidget to where the unavailable one is expected to be would cause a
crash.

Change-Id: I829d93041b7950a3546ba4e6c3764b169f276315
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-07-31 08:24:18 +02:00
Shawn Rutledge
e54ef7f23b xcb: mouse wheel does not focus a window
The window should react to the wheel event (e.g. scroll content)
but without becoming focused; this is the X11 convention.

Task-number: QTBUG-32517
Change-Id: I7e12425e5a6e1549b7f23dc318612a436c24d14b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-07-31 07:33:23 +02:00
Liang Qi
130f43c9c1 Gtk theme: emit currentFontChanged() in font dialog helper
There is no signal for it in gtk font selection. We should emit this
signal just before accept() was emitted.

Change-Id: Ie31d96b789436607b134c84dd77a4b9be9e9a550
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
2013-07-30 22:49:44 +02:00
Albert Astals Cid
c3f485c525 Expose invokables that are not slots in the xml
Without it the invocations were working but were not listed on introspection

Change-Id: Ie62f7dc3577f52b6888ddebf0392fdf51f2845d5
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-07-30 20:34:11 +02:00
Friedemann Kleint
8fd3d53a93 QByteArray: Remove some reinterpret_cast<>.
Fix warning: QByteArray(QByteArrayDataPtr dd) constructor warning
C4946: reinterpret_cast used between related classes: 'QArrayData'
and 'QTypedArrayData<T>'.

Task-number: QTBUG-32559
Change-Id: I06356902f79ed6bf784127ff0c3a97d3263a25da
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
2013-07-30 20:34:11 +02:00
Gunnar Sletta
db13d9b8a1 Fix upload of glyphs when using RGB32 masks on OpenGL ES
OpenGL ES doesn't allow internal format to be different
from external format, so always do the conversion from
BGRA -> RGBA. We are anyway iterating over all the
pixels so the performance impact of this should be
minimal.

Change-Id: Ie891665ad66e31692b69db02d34be8d303a7d631
Reviewed-by: Andy Shaw <andy.shaw@digia.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-07-30 20:34:11 +02:00
Nils Jeisecke
cf3e435299 Cocoa: Make sure that resizeEvent is invoked after calling resize
The QWindow::resizeEvent documentation states that resizeEvent
is invoked after the windowing system has acknowledged a
setGeometry() or resize() request.

The Cocoa plugin however did set the platform window geometry
immediately so that the qnsview's updateGeometry returned too
early.

Task-number: QTBUG-32706
Change-Id: I1f359ab368833d174ab6740f4467b0848c290f13
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-07-30 17:24:15 +02:00
Albert Astals Cid
5d192deed9 Fix crash on qdbus when return type is a raw dbus type
Assigning a -1 to type is going to make things crash since
it basically means unresolved and when you try to access the string data
go to a index that doesn't exist

So what I do is save the return type in rawReturnType if it is a raw
one and reassign the type to IsUnresolvedType | strings.enter(mm.rawReturnType)
instead of -1 when "saving" the metaobject

Task-number: QTBUG-32671

Change-Id: I67898dea8a1926eee80c16417e877ef4e22aa06b
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-07-30 09:22:42 +02:00
Illya Kovalevskyy
f52e9b1172 Symbol for max number of arguments in QMetaMethod::invoke()
QMetaMethod::invoke(..) takes fixed number of arguments for execution.
Adding preprocessor macros which literaly equals this number would be
useful for writing some generic code.

Task-number: QTBUG-31821
Change-Id: Ia2faf291f3f7df44a47c3cf18f5cd587d37d7d2e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-07-30 03:18:47 +02:00
Thiago Macieira
f9f72aa114 Add support for Q_OS_FREEBSD_KERNEL and document
Also clarify documentation for OSes with variants. Q_OS_ANDROID should
have been called Q_OS_LINUX_ANDROID and Q_OS_BLACKBERRY should have been
Q_OS_QNX_BLACKBERRY.

Task-number: QTBUG-15402
Change-Id: I3a34d52a1c0ebb8eb73284bdf198443c209a5fd4
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-07-30 01:14:16 +02:00
Jake Petroules
fb25d6c7f6 Remove a left over cast that is now semantically incorrect.
CFPropertyListRef is a typedef for void*, which is why this code was
compiling OK prior to this change.

Change-Id: I78d65652a76721434056bd9f6d011917e2864125
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-07-30 01:14:16 +02:00
Richard Browne
9f8a724cda Work around msvc /clr LNK2005 errors with QList
This patch fixes a compatibility with Qt 5 and Microsoft C++ /clr mode.
The QList copy constructor defines a Cleanup class that causes LNK2005
errors. It is a compiler problem, but the patch is simple. The use of
QT_TRY/QT_RETHROW instead of a Cleanup class is more consistent with other
Qt code, so is arguably preferable even without the compiler bug.

Task-number: QTBUG-31949

Change-Id: I1acfbae1924f0a52ffb8d9722b52e01b61edd42e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-07-30 01:14:16 +02:00
Peter Seiderer
6c21f42657 Change QDBusPendingCallPrivate to full reference counting for deletion.
Fixes race between QDBusConnectionPrivate::processFinishedCall()
releasing the mutex before emitting signals (using various members of
QDBusPendingCallPrivate) and deletion of the QDBusPendingCallPrivate
object through QDBusPendingCall::d's destructor (a member of type
QExplicitlySharedDataPointer<QDBusPendingCallPrivate>) leeds to
segmentation fault with CrashTest example on slow/single core
arm cpu).

Task-number: QTBUG-27809
Change-Id: I3590d74d1cfa5816ede764b50b83a7008ec780ff
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-07-29 22:28:58 +02:00
Peter Seiderer
72ecf5a7ec Remove QDBusPendingCallPrivate::autoDelete logic.
First step to fix race condition about deleting QDBusPendingCallPrivate.

In a multithreaded application on a slow/single core cpu the following
race (and segmentation fault) can occur:

First thread A is running:
A:  QDBusPendingReply<> reply = pi->asyncCallWithArgumentList(method, argumentList);

Then when the dbus answer arrives thread B will call:

B:  QDBusConnectionPrivate::processFinishedCall()
B:      ...
B:      locker.unlock()

and runs until here, go on with thread A:

A:  reply.waitForFinished();
A:    QDBusPendingCallPrivate::waitForFinished()
A:    {
A:        QMutexLocker locker(&mutex);
A:        if (replyMessage.type() != QDBusMessage::InvalidMessage)
A:            return;

which returns immediately (mutex acquired, replyMessage alread set), now
reply goes out of scope (destructor called) and QDBusPendingCall::d's
destructor of type QExplicitlySharedDataPointer<QDBusPendingCallPrivate>
deletes the reference counted object QDBusPendingCallPrivate.

Now thread B continues, still in processFinishedCall()

B:      if (call->watcherHelper)
B:          call->watcherHelper->emitSignals(msg, call->sentMessage);
B:
B:      if (msg.type() == QDBusMessage::ErrorMessage)
B:          emit connection->callWithCallbackFailed(QDBusError(msg),
B:              call->sentMessage);

accessing alread deleted object QDBusPendingCallPrivate via call->...

Fixed QDBusPendingCallPrivate deletion by proper reference counting
will be done in the next commit.

Task-number: QTBUG-27809
Change-Id: I15b3f0242471b62eaafadc763fb6a33339ff2fe1
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-07-29 22:28:41 +02:00
Peter Seiderer
64e3bd481e Fix unprotected access to QDBusPendingCallPrivate::pending.
In QDBusConnectionPrivate::waitForFinished() pcall->pending was used
after the protection by pcall->mutex was released. A simultaneous
call to QDBusConnectionPrivate::processFinishedCall() was able
to reset pcall->pending to null before it was used for the
q_dbus_pending_call_block(pcall->pending) call.

Fixed by releasing (and setting to 0) of pcall->pending in
processFinishedCall() only in case no one is waiting yet, otherwise
release pcall->pending by the first thread waiting in waitForFinished().

There is still a race condition about deleting QDBusPendingCallPrivate
(too early) which will be fixed in the next two commits.

Task-number: QTBUG-27809
Change-Id: I040173810ad90653fe1bd1915f22d8dd70d47d8c
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-07-29 22:28:12 +02:00
Eskil Abrahamsen Blomfeldt
9eeb1bd4d4 Add workaround for GL on Android emulator
On the Android Emulator, the shaders will be compiled by a desktop
GL driver, since the GL driver in the emulator is just a thin
wrapper. The GL driver does not necessarily support the precision
qualifiers, which can cause applications to break. We detect this
at runtime in the platform plugin and set a workaround flag to

Task-number: QTBUG-32557
Change-Id: Ied00cfe8e804d1f7862697dd379a14f3bed3d980
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-07-29 17:58:30 +02:00
Frederik Gladhorn
32e6778bda Stop unconditional synth of mouse events on Android
Before this patch we always send mouse events for each
touch event that happens.
This is redundant (we already synthesize in
QGuiApplicatioin) and breaks some touch handling
in QtQuick2.

Change-Id: I4bc1686a7a46039901315619a0acdf2888ad6775
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-07-29 17:58:30 +02:00
Paul Olav Tvete
591584d9a9 Android: Get SSL root certificates from TrustManager
On Android, when not using Ministro, we cannot read certificates
from the file system, so we have to get them through Java APIs instead.

Change-Id: I415329fcb45836735c1112dbe832214b3c73dc9a
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
2013-07-29 15:38:51 +02:00