Que es lo que tiene $Resu?
prueba haciendo esto:
print_r ($Resu)
Es probable que en lugar de tener un array de datos tengas un array de arrays de datos
algo así...
$Resu[0]=array("dato"=>"m4");
$Resu[1]=array("dato"=>"m5");
$Resu[2]=array("dato"=>"m6");
$Resu[3]=array("dato"=>"---");
$Resu[4]=array("dato"=>"---");
De esa forma el count siempre te dará 5, y el filtro siempre te devolverá TODOS los valores, pues NINGUNO de ellos es == "---" sino que todos son arrays (array!="---") = true