Merge "Merge remote-tracking branch 'gerrit/release' into stable" into refs/staging/stable

This commit is contained in:
Frederik Gladhorn 2013-01-15 18:23:19 +01:00 committed by The Qt Project
commit 122ee7a367
16 changed files with 30 additions and 21 deletions

5
dist/README vendored
View File

@ -152,8 +152,3 @@ Much more information is available at:
We hope you will enjoy using Qt!
- The Qt developers @ qt-project.org
In memory of Trond Kjernåsen.
You will not be forgotten.

5
dist/changes-5.0.1 vendored
View File

@ -98,6 +98,7 @@ Qt for Windows CE
* Compiler Specific Changes *
****************************************************************************
- MinGW: Statically link runtime libraries into qmake
****************************************************************************
* Tools *
@ -113,3 +114,7 @@ Qt for Windows CE
* Important Behavior Changes *
****************************************************************************
- QSharedMemory on Unix systems now no longer creates shared memory
segments that are readable and writeable to everyone. From Qt 5.0.1
forward, the segments are created readable and writeable only by the
current user. This matches the behavior on Windows.

View File

@ -51,8 +51,6 @@ QMAKE_CXXFLAGS_EXCEPTIONS_ON = -EHsc
QMAKE_CXXFLAGS_EXCEPTIONS_OFF =
QMAKE_INCDIR =
QMAKE_INCDIR_QT = $$[QT_INSTALL_HEADERS]
QMAKE_LIBDIR_QT = $$[QT_INSTALL_LIBS]
QMAKE_RUN_CC = $(CC) -c $(CFLAGS) $(INCPATH) -Fo$obj $src
QMAKE_RUN_CC_IMP = $(CC) -c $(CFLAGS) $(INCPATH) -Fo$@ $<

View File

@ -54,7 +54,7 @@ CFLAGS = -c -o$@ -O \
-DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -DQT_NO_DATASTREAM \
-DUNICODE
CXXFLAGS = $(CFLAGS)
LFLAGS = -static-libgcc -s
LFLAGS = -static -s
LIBS = -lole32 -luuid -ladvapi32 -lkernel32
LINKQMAKE = g++ $(LFLAGS) -o qmake.exe $(OBJS) $(QTOBJS) $(LIBS)
ADDCLEAN =

View File

@ -50,7 +50,7 @@ QMAKE_DYNAMIC_LIST_FILE = $$PWD/QtCore.dynlist
contains(DEFINES,QT_EVAL):include(eval.pri)
HOST_BINS = $$[QT_HOST_BINS]
HOST_BINS = $$[QT_HOST_BINS/raw]
host_bins.name = host_bins
host_bins.variable = HOST_BINS

View File

@ -197,7 +197,7 @@ bool QSharedMemoryPrivate::create(int size)
}
// create
if (-1 == shmget(unix_key, size, 0666 | IPC_CREAT | IPC_EXCL)) {
if (-1 == shmget(unix_key, size, 0600 | IPC_CREAT | IPC_EXCL)) {
QString function = QLatin1String("QSharedMemory::create");
switch (errno) {
case EINVAL:
@ -218,7 +218,7 @@ bool QSharedMemoryPrivate::create(int size)
bool QSharedMemoryPrivate::attach(QSharedMemory::AccessMode mode)
{
// grab the shared memory segment id
int id = shmget(unix_key, 0, (mode == QSharedMemory::ReadOnly ? 0444 : 0660));
int id = shmget(unix_key, 0, (mode == QSharedMemory::ReadOnly ? 0400 : 0600));
if (-1 == id) {
setErrorString(QLatin1String("QSharedMemory::attach (shmget)"));
return false;
@ -263,7 +263,7 @@ bool QSharedMemoryPrivate::detach()
size = 0;
// Get the number of current attachments
int id = shmget(unix_key, 0, 0444);
int id = shmget(unix_key, 0, 0400);
cleanHandle();
struct shmid_ds shmid_ds;

View File

@ -136,10 +136,10 @@ key_t QSystemSemaphorePrivate::handle(QSystemSemaphore::AccessMode mode)
}
// Get semaphore
semaphore = semget(unix_key, 1, 0666 | IPC_CREAT | IPC_EXCL);
semaphore = semget(unix_key, 1, 0600 | IPC_CREAT | IPC_EXCL);
if (-1 == semaphore) {
if (errno == EEXIST)
semaphore = semget(unix_key, 1, 0666 | IPC_CREAT);
semaphore = semget(unix_key, 1, 0600 | IPC_CREAT);
if (-1 == semaphore) {
setErrorString(QLatin1String("QSystemSemaphore::handle"));
cleanHandle();

View File

@ -107,7 +107,7 @@ QXcbShmImage::QXcbShmImage(QXcbScreen *screen, const QSize &size, uint depth, QI
if (!segmentSize)
return;
int id = shmget(IPC_PRIVATE, segmentSize, IPC_CREAT | 0777);
int id = shmget(IPC_PRIVATE, segmentSize, IPC_CREAT | 0600);
if (id == -1)
qWarning("QXcbShmImage: shmget() failed (%d) for size %d (%dx%d)",
errno, segmentSize, size.width(), size.height());

View File

@ -382,6 +382,11 @@ void QXcbWindow::create()
if (window()->flags() & Qt::WindowTransparentForInput)
setTransparentForMouseEvents(true);
#ifdef XCB_USE_XLIB
// force sync to read outstanding requests - see QTBUG-29106
XSync(DISPLAY_FROM_XCB(m_screen), false);
#endif
#ifndef QT_NO_DRAGANDDROP
connection()->drag()->dndEnable(this, true);
#endif

View File

@ -2221,12 +2221,17 @@ Q_WIDGETS_EXPORT bool qt_tryModalHelper(QWidget *widget, QWidget **rettop)
bool QApplicationPrivate::isBlockedByModal(QWidget *widget)
{
widget = widget->window();
return self->isWindowBlocked(widget->windowHandle());
QWindow *window = widget->windowHandle();
return window && self->isWindowBlocked(window);
}
bool QApplicationPrivate::isWindowBlocked(QWindow *window, QWindow **blockingWindow) const
{
QWindow *unused = 0;
if (!window) {
qWarning().nospace() << "window == 0 passed.";
return false;
}
if (!blockingWindow)
blockingWindow = &unused;

View File

@ -597,12 +597,14 @@ void QWidgetWindow::handleWindowStateChangedEvent(QWindowStateChangeEvent *event
if (QTLWExtra *tle = m_widget->d_func()->maybeTopData())
tle->normalGeometry = m_widget->geometry();
widgetState |= Qt::WindowMaximized;
widgetState &= ~(Qt::WindowMinimized | Qt::WindowFullScreen);
break;
case Qt::WindowFullScreen:
if (effectiveState(widgetState) == Qt::WindowNoState)
if (QTLWExtra *tle = m_widget->d_func()->maybeTopData())
tle->normalGeometry = m_widget->geometry();
widgetState |= Qt::WindowFullScreen;
widgetState &= ~(Qt::WindowMinimized);
break;
case Qt::WindowActive: // Not handled by QWindow
break;

View File

@ -1149,7 +1149,7 @@ void QCommonStylePrivate::startAnimation(QStyleAnimation *animation) const
stopAnimation(animation->target());
q->connect(animation, SIGNAL(destroyed()), SLOT(_q_removeAnimation()), Qt::UniqueConnection);
animations.insert(animation->target(), animation);
animation->start();
animation->start(QAbstractAnimation::DeleteWhenStopped);
}
/*! \internal */

View File

@ -53,7 +53,6 @@ QStyleAnimation::QStyleAnimation(QObject *target) : QAbstractAnimation(),
moveToThread(target->thread());
setParent(target);
}
connect(this, SIGNAL(finished()), SLOT(deleteLater()));
}
QStyleAnimation::~QStyleAnimation()

View File

@ -210,7 +210,7 @@ int tst_QSharedMemory::remove(const QString &key)
return -3;
}
int id = shmget(unix_key, 0, 0660);
int id = shmget(unix_key, 0, 0600);
if (-1 == id) {
qDebug() << "shmget failed" << strerror(errno);
return -4;

View File

@ -3254,7 +3254,7 @@ void tst_QAccessibility::bridgeTest()
ia2TableCell->Release();
ia2Table->Release();
#endif
iaccTextEdit->Release();
iaccTable->Release();
}
iaccWindow->Release();

View File

@ -3042,7 +3042,7 @@ void Configure::generateQConfigPri()
configStream << " slog2";
if (dictionary["DIRECTWRITE"] == "yes")
configStream << "directwrite";
configStream << " directwrite";
// ### For compatibility only, should be removed later.
configStream << " qpa";