Hello,
I am using Qt4 libraries in V3.5.4 KDevelop and I am having a general debugging issue.

I have a QFile instance in a subclassed QThread, and have noticed that whenever I try to debug step over a QFile method, the debugger completely freezes. I have tried stepping over said function calls and even stepping into said function calls, and the debugger freezes.

Below is how I am using my code.

Qt Code:
  1. class MyQThread : public QThread
  2. {
  3. ...
  4.  
  5. private:
  6. QFile * file;
  7. };
  8.  
  9.  
  10. MyQThread::MyQThread(QObject * parent) : QThread(parent)
  11. {
  12. file = NULL;
  13. }
  14.  
  15. void MyQThread::run()
  16. {
  17. bool doneReading;
  18. while (running) {
  19. /* get file if null */
  20. if (!file) {
  21. QString path = getPathToFile();
  22. file = new QFile(path);
  23. if (!file->open(QIODevice::ReadOnly)) { /* !! FREEZES HERE !! */
  24. delete file; /* never enters here */
  25. file = NULL;
  26. return;
  27. }
  28. }
  29.  
  30. /* never gets to here */
  31. doneReading = readSomeFileData(file);
  32.  
  33. if (doneReading) {
  34. file->close();
  35. delete file;
  36. file = NULL;
  37. }
  38. }
  39. }
To copy to clipboard, switch view to plain text mode 

I am pretty sure there are no open file desciptors on the files I am attempting to open b/c I have tested this code after rebooting the machine and manipulating the files in no way. Also, I have verified that I am getting the correct path.

Are there any funny quirks about using QFile in a QThread and not the main GUI thread?

Thanks in advance.