I think the socket is created in the parent thread's context.
Try calling connectionThread->moveToThread(connectionThread) from wherever you start the connection thread, but after it has started.