[Qt-interest] Problem with QHash and QThread

Andrei Cimpean andreiamenta at gmail.com
Sat Jun 18 14:02:21 CEST 2011


I went through the code and this is were the problem appears to be:

QHash<QPoint,int>::const_iterator i = rhombus.points.constBegin();
                    while (i != rhombus.points.constEnd()) {
                        //first search through the entire hash and for new
points calculate the SSD
                        if(i.value() == -1){
                            //position the coordinates of the block at the
top left corner
                            //for easier calculations
                            blockTested_x = i.key().x() - this->blockSize/2;
                            blockTested_y = i.key().y() - this->blockSize/2;
                            sum = 0;
                            //calculate ssd for the current block
                            for(int block_i = 0 ; block_i < this->blockSize
; block_i++){
                                for(int block_j = 0 ; block_j <
this->blockSize ; block_j++){
                                    //check if block is out of bonds
                                    if(blockTested_x > 0 && blockTested_x <
this->secondFrame->width()-this->blockSize
                                            && blockTested_y>0 &&
blockTested_y < this->secondFrame->height()-this->blockSize){
                                        //if block is valid calculate the
ssd
                                        valuesInTestedBlock =
currentBlockPreparedVals[block_i][block_j]
-qGray(this->secondFrame->pixel(block_i+blockTested_x,block_j+blockTested_y));
                                        sum += valuesInTestedBlock *
valuesInTestedBlock;
                                    }
                                }
                            }
                            //update the sum value for the current key
                            rhombus.points.insert(i.key(),sum);
                        }
                        ++i;
                    }

Thanks.


On Thu, Jun 16, 2011 at 8:19 PM, Bo Thorsen <bo at fioniasoftware.dk> wrote:

> Your problem is in code you didn't send here. There is nothing in the
> code you sent that will crash the application.
>
> Bo.
>
> Den 15-06-2011 00:43, Andrei Sebastian Cîmpean skrev:
> > Hello everybody,
> >
> > I have stumbled upon a problem that I don't quite understand and I was
> hoping
> > someone can help me get to the bottom of it.
> > I have a class that inherits QThread. In the header file I have:
> >
> > inline uint qHash(const QPoint&  p)
> > {
> >      return qHash(p.x()+p.y());
> > }
> > struct Hexagon{
> >      QPoint center;
> >      int centerSSD;
> >      QHash<QPoint,int>  points;
> > };
> > class HexagonalSearch : public QThread, public BlockMatching
> > {
> >      Q_OBJECT
> > (...)
> >
> > , with BlockMatching being a simple class that just has some functions
> preset.
> > It compiles without any warnings, although I know that's not necessarily
> a
> > condition for no problems.
> > When I run the app and it gets to part where it has to execute the run()
> > function the app crashes. I can't debug using Qt Creator (don't know why
> it
> > freezes at setting breakpoints even after reinstall) but when I run the
> > debugger it instantly crashes with the message "The inferior stopped
> ...." ->
> > Segmentation fault, and it displays assembly code with a flag set for a
> > compare (cmpq).
> > I have attached a screenshot with the result.
> > Any help would be greatly appreciated and would probably save my life.
> >
> > Thank you for your time and patience,
> > Andrei Sebastian Cîmpean
> >
> >
> >
> > _______________________________________________
> > Qt-interest mailing list
> > Qt-interest at qt.nokia.com
> > http://lists.qt.nokia.com/mailman/listinfo/qt-interest
>
>
> Bo Thorsen,
> Fionia Software.
>
> --
>
> Expert Qt and C++ developer for hire
> Contact me if you need expert Qt help
> http://www.fioniasoftware.dk
> _______________________________________________
> Qt-interest mailing list
> Qt-interest at qt.nokia.com
> http://lists.qt.nokia.com/mailman/listinfo/qt-interest
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.qt-project.org/pipermail/qt-interest-old/attachments/20110618/bc575365/attachment.html 


More information about the Qt-interest-old mailing list