Merge "Merge remote-tracking branch 'gerrit/release' into stable" into refs/staging/stable
This commit is contained in:
commit
122ee7a367
5
dist/README
vendored
5
dist/README
vendored
@ -152,8 +152,3 @@ Much more information is available at:
|
|||||||
We hope you will enjoy using Qt!
|
We hope you will enjoy using Qt!
|
||||||
|
|
||||||
- The Qt developers @ qt-project.org
|
- The Qt developers @ qt-project.org
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
In memory of Trond Kjernåsen.
|
|
||||||
You will not be forgotten.
|
|
5
dist/changes-5.0.1
vendored
5
dist/changes-5.0.1
vendored
@ -98,6 +98,7 @@ Qt for Windows CE
|
|||||||
* Compiler Specific Changes *
|
* Compiler Specific Changes *
|
||||||
****************************************************************************
|
****************************************************************************
|
||||||
|
|
||||||
|
- MinGW: Statically link runtime libraries into qmake
|
||||||
|
|
||||||
****************************************************************************
|
****************************************************************************
|
||||||
* Tools *
|
* Tools *
|
||||||
@ -113,3 +114,7 @@ Qt for Windows CE
|
|||||||
* Important Behavior Changes *
|
* 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.
|
||||||
|
@ -51,8 +51,6 @@ QMAKE_CXXFLAGS_EXCEPTIONS_ON = -EHsc
|
|||||||
QMAKE_CXXFLAGS_EXCEPTIONS_OFF =
|
QMAKE_CXXFLAGS_EXCEPTIONS_OFF =
|
||||||
|
|
||||||
QMAKE_INCDIR =
|
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 = $(CC) -c $(CFLAGS) $(INCPATH) -Fo$obj $src
|
||||||
QMAKE_RUN_CC_IMP = $(CC) -c $(CFLAGS) $(INCPATH) -Fo$@ $<
|
QMAKE_RUN_CC_IMP = $(CC) -c $(CFLAGS) $(INCPATH) -Fo$@ $<
|
||||||
|
@ -54,7 +54,7 @@ CFLAGS = -c -o$@ -O \
|
|||||||
-DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -DQT_NO_DATASTREAM \
|
-DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -DQT_NO_DATASTREAM \
|
||||||
-DUNICODE
|
-DUNICODE
|
||||||
CXXFLAGS = $(CFLAGS)
|
CXXFLAGS = $(CFLAGS)
|
||||||
LFLAGS = -static-libgcc -s
|
LFLAGS = -static -s
|
||||||
LIBS = -lole32 -luuid -ladvapi32 -lkernel32
|
LIBS = -lole32 -luuid -ladvapi32 -lkernel32
|
||||||
LINKQMAKE = g++ $(LFLAGS) -o qmake.exe $(OBJS) $(QTOBJS) $(LIBS)
|
LINKQMAKE = g++ $(LFLAGS) -o qmake.exe $(OBJS) $(QTOBJS) $(LIBS)
|
||||||
ADDCLEAN =
|
ADDCLEAN =
|
||||||
|
@ -50,7 +50,7 @@ QMAKE_DYNAMIC_LIST_FILE = $$PWD/QtCore.dynlist
|
|||||||
|
|
||||||
contains(DEFINES,QT_EVAL):include(eval.pri)
|
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.name = host_bins
|
||||||
host_bins.variable = HOST_BINS
|
host_bins.variable = HOST_BINS
|
||||||
|
|
||||||
|
@ -197,7 +197,7 @@ bool QSharedMemoryPrivate::create(int size)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// create
|
// 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");
|
QString function = QLatin1String("QSharedMemory::create");
|
||||||
switch (errno) {
|
switch (errno) {
|
||||||
case EINVAL:
|
case EINVAL:
|
||||||
@ -218,7 +218,7 @@ bool QSharedMemoryPrivate::create(int size)
|
|||||||
bool QSharedMemoryPrivate::attach(QSharedMemory::AccessMode mode)
|
bool QSharedMemoryPrivate::attach(QSharedMemory::AccessMode mode)
|
||||||
{
|
{
|
||||||
// grab the shared memory segment id
|
// 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) {
|
if (-1 == id) {
|
||||||
setErrorString(QLatin1String("QSharedMemory::attach (shmget)"));
|
setErrorString(QLatin1String("QSharedMemory::attach (shmget)"));
|
||||||
return false;
|
return false;
|
||||||
@ -263,7 +263,7 @@ bool QSharedMemoryPrivate::detach()
|
|||||||
size = 0;
|
size = 0;
|
||||||
|
|
||||||
// Get the number of current attachments
|
// Get the number of current attachments
|
||||||
int id = shmget(unix_key, 0, 0444);
|
int id = shmget(unix_key, 0, 0400);
|
||||||
cleanHandle();
|
cleanHandle();
|
||||||
|
|
||||||
struct shmid_ds shmid_ds;
|
struct shmid_ds shmid_ds;
|
||||||
|
@ -136,10 +136,10 @@ key_t QSystemSemaphorePrivate::handle(QSystemSemaphore::AccessMode mode)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Get semaphore
|
// 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 (-1 == semaphore) {
|
||||||
if (errno == EEXIST)
|
if (errno == EEXIST)
|
||||||
semaphore = semget(unix_key, 1, 0666 | IPC_CREAT);
|
semaphore = semget(unix_key, 1, 0600 | IPC_CREAT);
|
||||||
if (-1 == semaphore) {
|
if (-1 == semaphore) {
|
||||||
setErrorString(QLatin1String("QSystemSemaphore::handle"));
|
setErrorString(QLatin1String("QSystemSemaphore::handle"));
|
||||||
cleanHandle();
|
cleanHandle();
|
||||||
|
@ -107,7 +107,7 @@ QXcbShmImage::QXcbShmImage(QXcbScreen *screen, const QSize &size, uint depth, QI
|
|||||||
if (!segmentSize)
|
if (!segmentSize)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
int id = shmget(IPC_PRIVATE, segmentSize, IPC_CREAT | 0777);
|
int id = shmget(IPC_PRIVATE, segmentSize, IPC_CREAT | 0600);
|
||||||
if (id == -1)
|
if (id == -1)
|
||||||
qWarning("QXcbShmImage: shmget() failed (%d) for size %d (%dx%d)",
|
qWarning("QXcbShmImage: shmget() failed (%d) for size %d (%dx%d)",
|
||||||
errno, segmentSize, size.width(), size.height());
|
errno, segmentSize, size.width(), size.height());
|
||||||
|
@ -382,6 +382,11 @@ void QXcbWindow::create()
|
|||||||
if (window()->flags() & Qt::WindowTransparentForInput)
|
if (window()->flags() & Qt::WindowTransparentForInput)
|
||||||
setTransparentForMouseEvents(true);
|
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
|
#ifndef QT_NO_DRAGANDDROP
|
||||||
connection()->drag()->dndEnable(this, true);
|
connection()->drag()->dndEnable(this, true);
|
||||||
#endif
|
#endif
|
||||||
|
@ -2221,12 +2221,17 @@ Q_WIDGETS_EXPORT bool qt_tryModalHelper(QWidget *widget, QWidget **rettop)
|
|||||||
bool QApplicationPrivate::isBlockedByModal(QWidget *widget)
|
bool QApplicationPrivate::isBlockedByModal(QWidget *widget)
|
||||||
{
|
{
|
||||||
widget = widget->window();
|
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
|
bool QApplicationPrivate::isWindowBlocked(QWindow *window, QWindow **blockingWindow) const
|
||||||
{
|
{
|
||||||
QWindow *unused = 0;
|
QWindow *unused = 0;
|
||||||
|
if (!window) {
|
||||||
|
qWarning().nospace() << "window == 0 passed.";
|
||||||
|
return false;
|
||||||
|
}
|
||||||
if (!blockingWindow)
|
if (!blockingWindow)
|
||||||
blockingWindow = &unused;
|
blockingWindow = &unused;
|
||||||
|
|
||||||
|
@ -597,12 +597,14 @@ void QWidgetWindow::handleWindowStateChangedEvent(QWindowStateChangeEvent *event
|
|||||||
if (QTLWExtra *tle = m_widget->d_func()->maybeTopData())
|
if (QTLWExtra *tle = m_widget->d_func()->maybeTopData())
|
||||||
tle->normalGeometry = m_widget->geometry();
|
tle->normalGeometry = m_widget->geometry();
|
||||||
widgetState |= Qt::WindowMaximized;
|
widgetState |= Qt::WindowMaximized;
|
||||||
|
widgetState &= ~(Qt::WindowMinimized | Qt::WindowFullScreen);
|
||||||
break;
|
break;
|
||||||
case Qt::WindowFullScreen:
|
case Qt::WindowFullScreen:
|
||||||
if (effectiveState(widgetState) == Qt::WindowNoState)
|
if (effectiveState(widgetState) == Qt::WindowNoState)
|
||||||
if (QTLWExtra *tle = m_widget->d_func()->maybeTopData())
|
if (QTLWExtra *tle = m_widget->d_func()->maybeTopData())
|
||||||
tle->normalGeometry = m_widget->geometry();
|
tle->normalGeometry = m_widget->geometry();
|
||||||
widgetState |= Qt::WindowFullScreen;
|
widgetState |= Qt::WindowFullScreen;
|
||||||
|
widgetState &= ~(Qt::WindowMinimized);
|
||||||
break;
|
break;
|
||||||
case Qt::WindowActive: // Not handled by QWindow
|
case Qt::WindowActive: // Not handled by QWindow
|
||||||
break;
|
break;
|
||||||
|
@ -1149,7 +1149,7 @@ void QCommonStylePrivate::startAnimation(QStyleAnimation *animation) const
|
|||||||
stopAnimation(animation->target());
|
stopAnimation(animation->target());
|
||||||
q->connect(animation, SIGNAL(destroyed()), SLOT(_q_removeAnimation()), Qt::UniqueConnection);
|
q->connect(animation, SIGNAL(destroyed()), SLOT(_q_removeAnimation()), Qt::UniqueConnection);
|
||||||
animations.insert(animation->target(), animation);
|
animations.insert(animation->target(), animation);
|
||||||
animation->start();
|
animation->start(QAbstractAnimation::DeleteWhenStopped);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*! \internal */
|
/*! \internal */
|
||||||
|
@ -53,7 +53,6 @@ QStyleAnimation::QStyleAnimation(QObject *target) : QAbstractAnimation(),
|
|||||||
moveToThread(target->thread());
|
moveToThread(target->thread());
|
||||||
setParent(target);
|
setParent(target);
|
||||||
}
|
}
|
||||||
connect(this, SIGNAL(finished()), SLOT(deleteLater()));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QStyleAnimation::~QStyleAnimation()
|
QStyleAnimation::~QStyleAnimation()
|
||||||
|
@ -210,7 +210,7 @@ int tst_QSharedMemory::remove(const QString &key)
|
|||||||
return -3;
|
return -3;
|
||||||
}
|
}
|
||||||
|
|
||||||
int id = shmget(unix_key, 0, 0660);
|
int id = shmget(unix_key, 0, 0600);
|
||||||
if (-1 == id) {
|
if (-1 == id) {
|
||||||
qDebug() << "shmget failed" << strerror(errno);
|
qDebug() << "shmget failed" << strerror(errno);
|
||||||
return -4;
|
return -4;
|
||||||
|
@ -3254,7 +3254,7 @@ void tst_QAccessibility::bridgeTest()
|
|||||||
ia2TableCell->Release();
|
ia2TableCell->Release();
|
||||||
ia2Table->Release();
|
ia2Table->Release();
|
||||||
#endif
|
#endif
|
||||||
iaccTextEdit->Release();
|
iaccTable->Release();
|
||||||
}
|
}
|
||||||
|
|
||||||
iaccWindow->Release();
|
iaccWindow->Release();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user