| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
... was breaking symbian-abld build.
|
|
|
|
|
|
|
|
|
|
|
|
| |
After the refactoring to src/tools/tools.pro the dependencies for IDC
and UIC3 ended up being incorrect, due to the eval rules later in that
file. This patch adds IDC and UIC3 to SRC_SUBDIRS after Qt3Support, and
before ActiveQt, so the dependencies remain correct as before the
refactoring. The added condition of src/tools/tools.pro ensures that we
add the tools to the Makefile in src/tools, should we decide to generate
it, and compile from there.
Reviewed-by: Jason McDonald
|
|
|
|
|
|
|
|
|
|
|
| |
This was a serious performance issue on Symbian and not necessarily
optimal on other platforms. For the time being, we'll allow the OS to
read/write as much as it can.
Otherwise cleaned up the code, adding checks for invalid len arguments.
Task-number: QT-2347
Reviewed-by: Peter Hartmann
|
|
|
|
|
|
|
|
|
| |
Configure.exe would simply initiate a build for each of the tools in
order. However, this would break certain distributed build systems,
since they would return right away after initiating the make. Thus,
sometimes moc et al. would try to link before bootstrap lib was built.
Reviewed-by: Jason McDonald
|
|
|
|
|
|
|
|
|
|
| |
patch by Warwick Allison. On cleanup in QHostInfoAgent, we were waiting
forever for the thread to terminate, which did not always succeed due to
a Linux kernel bug. Now, we just wait for some time and then return
anyway.
Reviewed-by: Marius Storm-Olsen
Task-number: QTBUG-5296
|
|\ |
|
| | |
|
| |\ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Calling QWidget::setCursor() outside of the event loop causes a memory
leak in Cocoa. Adding an autorelease pool plugs it.
Merge-request: 1791
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@nokia.com>
|
| | |
| | |
| | |
| | |
| | |
| | | |
Cherry-picked from d8a2e52e
Merge-request: 419
Reviewed-by: Olivier
|
| | |
| | |
| | |
| | |
| | |
| | | |
Imported from http://github.com/icefox/guessurlfromstring
Licensed under the 3-clause BSD license by the copyright holder.
|
| | |
| | |
| | |
| | | |
Reviewed-by: Trust Me
|
| | |
| | |
| | |
| | | |
Reviewed-By: Trust Me
|
| | |
| | |
| | |
| | | |
Reviewed-by: Daniel Molkentin
|
| | |
| | |
| | |
| | |
| | |
| | | |
This is the QtCore part of the timebomb.
Reviewed-by: Daniel Molkentin
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
QAbstractState::parentState() is called heavily by the state machine
algorithm. The parent state is obtained by qobject_cast'ing
QObject::parent(). qobject_cast() is expensive. This commit introduces
caching of the result in order to improve performance.
We expect that the cache won't be invalidated much since the parent-child
relationship of states usually doesn't change after the state machine is
started.
Reviewed-by: Eskil Abrahamsen Blomfeldt
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This function is useful for debugging, if nothing else, and has been
requested by users. We also refer to it in one of our blog posts, so
there's little point in trying to hide it any longer.
Reviewed-by: Eskil Abrahamsen Blomfeldt
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
By popular demand on the Qt Labs blog.
This makes it possible to readily use QStateMachine with e.g. worker
threads that post events to the machine.
Reviewed-by: Eskil Abrahamsen Blomfeldt
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This is the same type of optimization as that done for transitions in
commit 5d8dcd57cd13fdd9c8643fa3bdda9f197a4351ff. The idea is to avoid
calling qobject_cast() because it's very expensive.
Obtaining child states needs to be as fast as possible because it's in
the critical path of the state machine algorithm; it's called by a ton
of internal functions, like isCompound(), isAtomic(), isInFinalState().
It's also called heavily for parallel state groups.
Reviewed-by: Eskil Abrahamsen Blomfeldt
|
| | |
| | |
| | |
| | |
| | |
| | | |
Since QStateMachine inherits QState now.
Reviewed-by: Eskil Abrahamsen Blomfeldt
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
MinGW doesn't have _aligned_malloc and posix_memalign doesn't have a
realloc function. So use our own implementation in all platforms.
Removing posix_memalign was reviewed by Brad, but I apparently lost
the commit.
Reviewed-by: Trust Me
|
|\ \ \
| |/ / |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
After API review discussions, it was decided to remove shader
binary support until we have a better handle on what we need.
Applications can directly load shader binaries on the shaderId()
using glShaderBinary() directly so they aren't prevented from
using the feature.
Reviewed-by: trustme
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Rendering into a QImage as a window backing store isn't very efficient
and isn't needed by any of our current platforms. If a specific
graphics system needs it in the future, it can implement it directly.
Reviewed-by: trustme
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
I suspect because of missing quotation marks those strings were not
showing up. Also, wrapping QT_TRANSLATE_NOOP inside a tr() call
makes no sense. Also changed the class from QObject to QSslSocket.
Task-number: QTBUG-5059
Reviewed-by: ossi
|
| | |
| | |
| | |
| | |
| | | |
Task-number: QTBUG-4984
Reviewed-by: Thiago
|
| | |
| | |
| | |
| | |
| | |
| | | |
upstream.
Reviewed-by: TrustMe
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Transitions are children of their source state. We use
QObject::children() and qobject_cast() each child to a
QAbstractTransition to see if it is indeed a transition. However,
calling qobject_cast() is very expensive. This commit introduces
a cached list of transitions. The list is invalidated after a
child object has been added or removed.
In the typical case we expect the object hierarchy to remain fairly
constant once the state machine has been started (states, child states
and transitions are usually "static"), in other words the cached list
is not likely to be invalidated much.
Obtaining a state's transitions needs to be as fast as possible
because it's in the critical path of the state machine algorithm.
Reviewed-by: Eskil Abrahamsen Blomfeldt
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
QScriptProgram encapsulates a Qt Script program (AKA a script).
It retains the compiled representation of the script, so that
repeated evaluation of the same script becomes faster.
An overload of QScriptEngine::evaluate() that takes a QScriptProgram
has been added.
Reviewed-by: Olivier Goffart
|
| | |
| | |
| | |
| | |
| | |
| | | |
Looks like a couple of files missed the namespace macro...
Rev-By: gunnar
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
At least Qt fails building with a namespace on Mac without this
change. What happends is that inserting a namespace before the
includes, will add the namespace twize if the included files also
inserts the namespace.
Rev-By: Alexis
|
| | |
| | |
| | |
| | | |
Reviewed-by: Trust Me
|
| | |
| | |
| | |
| | | |
Reviewed-by: Olivier Goffart
|
| | |
| | |
| | |
| | | |
Reviewed-by: TrustMe
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
... as described in the documentation. Furthermore:
* use qt_safe_select to timeout correctly
* return immediately when timeout value is 0
Reviewed-by: Oswald Buddenhagen
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This is future compatibility: we must rely on them being 0 in older
versions of Qt.
Reviewed-by: Bradley T. Hughes
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
QContiguousCache is a new type, so there are no binary compatibility
issues.
QHash and QMap didn't have any public qMalloc / qFree, so the entire
logic is contained in .cpp code. However, since old code will not
inform us of the alignment requirements, we need to add a bit to the
structure to indicate whether strict alignment is in use or not.
QList doesn't require any changes. For small, movable types, they're
all stored in the pointer array itself, so they're aligned. For larger
types, we use new(), so types with stricter requirements should define
their own operator new().
QLinkedList cannot be fixed. It uses new() on the QLinkedListNode,
which contains a T type. Sorry.
QVector did have public qMalloc / qFree. I've moved the calls to the
inner function and made it keep the old calls if the alignment
requirement is below a certain threshold. The idea is that, if it's
above, no one was using QVector anyway.
Reviewed-by: Bradley T. Hughes
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The private inheritance ensures that we don't try to access the types
under the wrong pointer. If we did that, we'd cause strict aliasing
violations.
Reviewed-by: Olivier Goffart
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
We want people to not use this signal directly.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We were using this signal to update the signal hooks when the remote
service changed. That meant each Qt app received every single service
creation, change or destruction.
Now we only watch the services we're really interested in.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
QDBusConnectionPrivate
I'll need to recurse into the signal connection mechanism in the next
commit.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Use null services to indicate we're not interested in the owner, but
empty-but-not-null to indicate we don't know what the owner is. Since
empty service names are not valid, this will mean that this rule won't
match.
|
| | |
| | |
| | |
| | |
| | | |
This allows us to listen only to the activations we're really
interested in.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
matching.
The bus allows us to match string arguments when receiving messages.
This is very useful for the NameOwnerChanged signal, whose first
argument is usually what we're interested in.
By using these new functions, you can restrict receiving of signals to
those that you truly want, instead of receiving NameOwnerChanged for all
services registered/unregistered on the bus.
|
| | |
| | |
| | |
| | | |
I'll use this feature to match the NameOwnerChanged signal from the bus.
|
|\ \ \
| |/ / |
|
| | |
| | |
| | |
| | | |
Reviewed-by: Michael Brasser
|