Wieder segfault

Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.

Wieder segfault
Codestück schaut so aus:

std::vector index_list;

for (int c=0; c < 9; c++)
{
for (int l=0; l < 9; l++)
{
for (int j = 0; j < m_chunkDef.size_y/8; j++)
{
for (int i = 0; i < m_chunkDef.size_x/8; i++)
{
int index = i + jm_chunkDef.size_x + l7 + cm_chunkDef.size_x7;
Err::msg<<“index”<<index<<‘\n’;
Err::msg<<“map :”<<m_chunkDef.weight_map[index]<<‘\n’;
if ((m_chunkDef.weight_map[index].x<=0.2)&&(m_chunkDef.weight_map[index].y>=0.5)
&& (m_chunkDef.weight_map[index].z<=0.2)&&(m_chunkDef.weight_map[index].w<=0.2))
index_list.push_back(index);
}
}
ChunkTileDef ctd;
ctd.vertex_count = index_list.size();
ctd.vertex_list = new vec3f[index_list.size()];
//vec3f * vertex_list = new vec3f[index_list.size()];
std::vector::iterator it;
int index_1 = 0;
for (it = index_list.begin(); it != index_list.end(); ++it,m++)
{
ctd.vertex_list[index_1] = m_chunkDef.vertex_list[*it];
/*Err::msg<<"in: "<<it<<‘\n’;/
}

	//	memcpy(ctd.vertex_list, vertex_list, index_list.size());
		
		int in = 36 + l*7 + c*7*m_chunkDef.size_x;
		Err::msg<<"in: "<<in<<'\n';
		ctd.center = vec3f(m_chunkDef.vertex_list[in].x-0.5,
			m_chunkDef.vertex_list[in].y-0.5, m_chunkDef.center.z);
		m_chunkTile.push_back(ctd);
		index_list.clear();
		//delete[] vertex_list;
	}
}

und die letzten Zeilen in msg Log so:

map :0.0823529/0.0705882/0.0823529/0.72549
index4084
map :0.117647/0.0980392/0.101961/0.721569
index4085
map :0.152941/0.10196

bei der Ausgabe der map wird irgendwie abgebrochen. Diese map eintrag existiert. Wenn ich alle Einträge vorher ausgeben lasse, dann geht es ohne Probleme.

weights: 4085 0.152941/0.101961/0.101961/0.67451

Außerdem, das merkwürdigste, es bricht an verschiedenen Stellen ab. mal bei index 4021 mal woanders.
Falls jemand eine Idee hat, woran es liegen kann, bitte sehr um ein Rat. Ich werde natürlich weiter kämpfen. Aber … :frowning: :cry:


Ok. Hat sich erledigt. Aber liegt es nicht an der Schleifen, obwohl es genau da abbricht. Komisch… Liegt aber an anderen Stelle, die weiter kommt.