Hi again,

Recently I have created my own library (dynamically linked, Linux controlled os) and managed to successfully linked my application to it.
Sadly I encountered a problem that in previous version (in which classes located now in library, where in application code). Where is the problem ?

Here is the code snippet which generates SIGSEGV exception.
Qt Code:
  1. void WorkerQuery::worker_mode(const QSqlRecord& rec) {
  2. w = new Worker(selfPointer);
  3. w->setPrimaryKey(rec.value("idWorker").toInt());
  4. w->setNames(rec.value("fname").toString(),rec.value("lname").toString()); //PROBLEM HERE
  5. w->setLogin(rec.value("login").toString()); //PROBLEM ALSO HERE
  6. w->setPriviliges(rec.value("authorization").toString()); //BUT THIS LINE GENERATES NO ERROR
  7. }
To copy to clipboard, switch view to plain text mode 

QtCreator right after it's caught the exception is moving me to Dissambler, where I can see disassembled operator= from QString library and debugger is pointing at
Qt Code:
  1. 0x7ffff6921e50 <+032>: lock decl (%rax)
To copy to clipboard, switch view to plain text mode 
this instruction

One more thing...
here are declarations of the method setNames and setLogin
Qt Code:
  1. void setLogin(const QString &login);
  2. void setNames(const QString &a,const QString &b);
  3. void setPriviliges(const QString &c);
To copy to clipboard, switch view to plain text mode 

What is more interesting is that only setLogin, setNames generates exception but setPriviliges generates no error still having same declarations as for example setLogin.