| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Now you can opt it out to save disk space (for embedded).
Also tested it and fixed code in state machine.
|
|
|
|
| |
simply added Q_UNUSED for parameters that weren't used in a function
|
|
|
|
|
|
|
| |
Wherever I found that we were using a string instead of a single char
I fixed the code.
Reviewed-by: olivier
|
|\
| |
| |
| |
| | |
Conflicts:
src/corelib/kernel/qsharedmemory_unix.cpp
|
| |
| |
| |
| | |
Reviewed-By: Oswald Buddenhagen
|
| |\ |
|
| | |
| | |
| | |
| | |
| | | |
Task-number: 254333
Reviewed-by: Andy Shaw <qt-info@nokia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When connecting to an open file descriptor, set the openMode in the file
system engine, as is done for file handles.
Reviewed-by: Thiago
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This gets temporary file renaming working on Windows, without requiring
block-copying.
While we could #ifdef this behavior for Windows, it's preferrable to
maintain consistency in the exposed interface.
Reviewed-by: Thiago
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
With recent changes to QTemporaryFile, allowing the file to be closed,
the engine has to keep track of whether a fileName has already been
generated, so we don't generate new files after the first one.
If the file is closed but we already have a name for it, then just
forward the call to the base file engine.
Reviewed-by: Thiago
|
| | |
| | |
| | |
| | |
| | |
| | | |
Lifetime of the engine is already handled by the native engine.
Reviewed-by: Thiago
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In some circumstances, the file descriptor in QTemporaryFile is actually
closed and setOpenMode alone won't give us reOpen semantics.
Added function to QTemporaryFileEngine that checks if we have open file
handles. On open, if we currently hold no handles, re-open the file.
Trying to open a new file while we hold open handles would lead to
leaks, so added an assert there, to be on the safe side.
Reviewed-by: Thiago
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Although QTemporaryFile hides QFile::open(OpenMode), this function is
still available when accessing instance methods through the base class.
Unconditionally setting ReadWrite allows the temporary file to be
re-opened with different flags.
Task-number: 248223
Reviewed-by: Thiago
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
For now, this only happens if Append mode is requested and we're unable
to seek to the end of the file. Theoretically, this could change in the
future so it's better to err on the safe side.
Reviewed-by: Thiago
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We souldn't be returning an empty string for the fileName, just because
the file is closed. E.g., after a rename, the file will be closed, but
should still have a name.
Reviewed-by: Thiago
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Note: this showed even if the file descriptor was kept open.
Reviewed-by: Peter Hartmann
Reviewed-by: Thiago
|
| | |
| | |
| | |
| | |
| | |
| | | |
Reviewed-by: MariusSO
Reviewed-by: Peter Hartmann
Reviewed-by: Thiago
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fallback implementation for rename operation should try to copy
permissions from the original file to the destination file. Note that
failures at this point are not treated as errors.
Errors previously set by the native fileEngine are also reset before
returning.
Reviewed-by: Peter Hartmann
Reviewed-by: Thiago
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Also added check in test case for rename fallback.
Task-number: 165920
Reviewed-by: Thiago
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Changed the fallback implementation to use 'this' instead of a new
QFile. This allows a QTemporaryFile to be block-copied to the
destination and the source to be removed (QTemporaryFile is special
because it isn't really closed).
Reviewed-by: Peter Hartmann
Reviewed-by: Thiago
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Block copying a sequential file is potentially a destructive operation,
because there is no guarantee copy+remove will succeed. In these cases
the fallback should not be tried.
The user is better equipped to decide how to handle such failures and to
ensure no data losses occur, e.g., copy without removing the original
file.
Reviewed-by: MariusSO
Reviewed-by: Peter Hartmann
Reviewed-by: Thiago
|
| | |
| | |
| | |
| | | |
Task-number: 252494
|
| | |
| | |
| | |
| | |
| | |
| | | |
Put all pipe creation calls together.
Reviewed-by: Oswald Buddenhagen
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
IRIX is no longer supported, so I won't bother fixing this part of the
code.
Reviewed-by: Oswald Buddenhagen
|
| | |
| | |
| | |
| | | |
Reviewed-by: thierry
|
| | |
| | |
| | |
| | |
| | |
| | | |
When the signal or senderObject is changed while the state is active,
the transition needs to be unregistered _before_ either property is
changed, only _then_ can it be re-registered.
|
| | |
| | |
| | |
| | |
| | |
| | | |
When the eventType or eventObject is changed while the state is active,
the transition needs to be unregistered _before_ either property is
changed, only _then_ can it be re-registered.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
As pointed out by Olivier, this should allow for better distribution
in the array.
I also removed the unnecessary count member, since we can use
QVarLengthArray.count() instead.
|
|\ \ \
| | |/
| |/| |
|
| | |
| | |
| | |
| | |
| | |
| | | |
Asked by Oswald.
Reviewed-by: Oswald Buddenhagen
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
ignorance.
If both pointers are out of 4-byte alignment, doing the first load
will align them so we can do 32-bit comparisons. Lars's code had this
before, but I misunderstood it and removed, thinking it was doing
misaligned accesses.
I experimented with moving the tail comparison above the 32-bit
comparison to save a register, but it made things worse.
Reviewed-By: Bradley T. Hughes
|
| | |
| | |
| | |
| | | |
Reviewed-By: Bradley T. Hughes
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Added qMemEquals method that returns true if
the two memory regions contain the same content.
Reviewed-By: Thiago Macieira
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
If we ever decide to make this class public, the interfaces should be
similar.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Mark the objectCount and mutex-pool as static as they won't ever be
externed. Use fetch-and-store zero instead of test-and-set from
current value to zero.
|
|\ \ \
| |/ / |
|
| |/
| |
| |
| |
| |
| |
| | |
I tested it with 32 bits compilation and there is no warning any more.
Task-number: 247325
Reviewed-by: ogoffart
|
| |
| |
| |
| | |
useless.
|
| |
| |
| |
| | |
Reviewed-by: ogoffart
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
That way we prevent the current possible race condition that may appears
while touching signals slot while object are moved to different threads.
For exemple, when we do sender->threadData->mutex->lock(); the sender
can possibly be moved to another thread between the moment we get the
pointer to the threadData and the moment we aquire the lock. We could
check if we locked the right mutex and retry otherwise, but that would
break if the threadData (and hence the mutex) get destroyed in between.
The per object mutex is implemented with a thread pool.
I'm not using the global QThreadPool because we might ends up locking
two of their mutex, and that would be dangerous if something else holds
a lock on the same mutex (possible deadlock)
Putting the mutex pool in a Q_GLOBAL_STATIC doesn't work as it might
result of the ppol being deleted before some other object in others
Q_GLOBAL_STATIC structures
There is no need to lock this mutex in moveToThread as this is safe.
When emiting a signal, we do not need to lock the thread data, as the
user must ensure that the object is not moved to a thread while emiting
a AutoConnection signal.
Reviewed-by: Brad
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| | |
Reviewed-by: Olivier Goffart
Reviewed-by: Peter Hartmann
Reviewed-by: João Abecasis
|
|\ \
| |/ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
currentFileInfo is only used for returning from the public functions
since the file info used in the algorithm is one step ahead.
nextFileInfo is the one actually used in the algorithm. The bug was
introduced in a compile fix for Windows and broke the stopLinkLoop test
for QDirIterator.
Reviewed-by: Olivier
|
| |
| |
| |
| | |
Reviewed-by: David Boddie
|
| |
| |
| |
| |
| |
| |
| |
| | |
Adding more details on QUrl::addQueryItem()
Task-number: 234125
Rev-by: Thiago Macieira
|
| |
| |
| |
| | |
Reviewed-by: Marius Storm-Olsen
|
| |
| |
| |
| |
| | |
Task-number: 253835
Reviewed-by: David Boddie
|
| |
| |
| |
| |
| | |
Signed-off-by: Andre Haupt <andre@bitwigglers.org>
Reviewed-By: Thiago Macieira
|