Hi, I'm writing a system using protocol buffers, and
there is the following error message when I try to access the file
where I keep data:
"libprotobuf FATAL /usr/local/include/google/protobuf/repeated_field.h:
637] CHECK failed: (index) < (size()): "
 The code is:
"               short numObj;

                const surroundsound::Arquivo::L1_Cena& cena_sonora =
projeto.cena(idxCena);
                numObj = cena_sonora.objetosonoro_size();


                for(int k = 0; k < numObj; k++)
                {
                    const surroundsound::Arquivo::L1_ObjetoSonoro&
objeto_sonoro = cena_sonora.objetosonoro(k);

                    if(objeto_sonoro.nomeobjetosonoro().empty())
                    {
                        if(k < numObj)
                            continue;
                        else
                            break;
                    }
                    qDebug() << "TableModel  Nome Objeto Sonoro: " <<
QString(objeto_sonoro.nomeobjetosonoro().c_str());
                    qDebug() << "TableModel  PosicaoX Objeto Sonoro: "
<< (double)(objeto_sonoro.posicaocartobjetosonoro().posicaox());
                    qDebug() << "TableModel  PosicaoY Objeto Sonoro: "
<< (double)(objeto_sonoro.posicaocartobjetosonoro().posicaoy());
                    qDebug() << "TableModel  PosicaoY Objeto Sonoro: "
<< (double)(objeto_sonoro.posicaocartobjetosonoro().posicaoz());
                    qDebug() << "TableModel  Elevacao Objeto Sonoro: "
<< (double)(objeto_sonoro.posicaoradobjetosonoro().elevacao());
                    qDebug() << "TableModel  Azimute Objeto Sonoro: "
<< (double)(objeto_sonoro.posicaoradobjetosonoro().azimute());
                    qDebug() << "TableModel  Distancia Objeto Sonoro:
" << (double)(objeto_sonoro.posicaoradobjetosonoro().distancia());
                    qDebug() << "TableModel  Drecao Objeto Sonoro: "
<< (double)(objeto_sonoro.direcaoobjetosonoro());
                    qDebug() << "TableModel  VolRefObjSonoro Objeto
Sonoro: " << (double)(objeto_sonoro.volrefobjsonoro());
                    qDebug() << "TableModel  ResolucaoTemporal Objeto
Sonoro: " << (double)(objeto_sonoro.resolucaotemporal());
                    qDebug() << "TableModel  TipoInterpolacao Objeto
Sonoro: " << (short)(objeto_sonoro.tipointerpolacao());
                    qDebug() << "TableModel  numFteSonAssociada Objeto
Sonoro: " << (double)(objeto_sonoro.numftesonassociada());
                    qDebug() << "TableModel  VolumeReferenciaTimeline
Objeto Sonoro: " << (double)
(objeto_sonoro.volumereferenciatimeline());
 
lista.append(tr("%1%2%3%4%5%6%7%8%9%10%11%12%13%14")
                                  .arg(idxCena, -5)
                                  .arg(k, -5)
                                  .arg(objeto_sonoro.nomeobjetosonoro().c_str(),
-100)
                                  
.arg(objeto_sonoro.posicaocartobjetosonoro().posicaox(),
-10)
                                  
.arg(objeto_sonoro.posicaocartobjetosonoro().posicaoy(),
-10)
                                  
.arg(objeto_sonoro.posicaocartobjetosonoro().posicaoz(),
-10)
                                  
.arg(objeto_sonoro.posicaoradobjetosonoro().elevacao(),
-10)
                                  
.arg(objeto_sonoro.posicaoradobjetosonoro().azimute(),
-10)
                                  
.arg(objeto_sonoro.posicaoradobjetosonoro().distancia(),
-10)
                                  .arg(objeto_sonoro.direcaoobjetosonoro(),
-10)
                                  .arg(objeto_sonoro.volrefobjsonoro(),
-10)
                                  .arg(objeto_sonoro.resolucaotemporal(),
-10)
                                  .arg(objeto_sonoro.tipointerpolacao(),
-10)
                                  .arg(objeto_sonoro.numftesonassociada(),
-10)
                                  .arg(objeto_sonoro.volumereferenciatimeline(),
-10));
                }
            }
"

I'd like to know why this is happening.
It is not a constant error.
Sometimes happen, sometimes do not.
I'm using version 2.3.0
OpenSuse 11.3
Qt4.6.3
Thanks in advance.

-- 
You received this message because you are subscribed to the Google Groups 
"Protocol Buffers" group.
To post to this group, send email to proto...@googlegroups.com.
To unsubscribe from this group, send email to 
protobuf+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/protobuf?hl=en.

Reply via email to