probably solved a bug with unstable connections

git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1985 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
joss17 2010-01-09 01:40:50 +00:00
parent 2ad7d02fa3
commit 68802e1191

View File

@ -182,8 +182,8 @@ int pqiperson::notifyEvent(NetInterface *ni, int newState)
std::ostringstream out; std::ostringstream out;
out << "pqiperson::connectattempt() Kid# "; out << "pqiperson::connectattempt() Kid# ";
out << i << " of " << kids.size(); out << i << " of " << kids.size();
out << std::endl; out << std::endl;
out << " type: " << (it->first); out << " type: " << (it->first);
out << " ni: " << (it->second)->ni; out << " ni: " << (it->second)->ni;
out << " in_ni: " << ni; out << " in_ni: " << ni;
pqioutput(PQL_DEBUG_BASIC, pqipersonzone, out.str()); pqioutput(PQL_DEBUG_BASIC, pqipersonzone, out.str());
@ -240,9 +240,10 @@ int pqiperson::notifyEvent(NetInterface *ni, int newState)
/* reset all other children? (clear up long UDP attempt) */ /* reset all other children? (clear up long UDP attempt) */
for(it = kids.begin(); it != kids.end(); it++) for(it = kids.begin(); it != kids.end(); it++)
{ {
if (it->second != activepqi) if (!(it->second)->thisNetInterface(ni))
{ {
std::cerr << "Resetting pqi" << std::endl; out << "Resetting pqi ref : " << &(it->second) << std::endl;
pqioutput(PQL_DEBUG_BASIC, pqipersonzone, out.str());
it->second->reset(); it->second->reset();
} else { } else {
std::cerr << "Active pqi : not resetting." << std::endl; std::cerr << "Active pqi : not resetting." << std::endl;
@ -258,7 +259,7 @@ int pqiperson::notifyEvent(NetInterface *ni, int newState)
if (active) if (active)
{ {
if (activepqi == pqi) if (activepqi->thisNetInterface(ni))
{ {
pqioutput(PQL_WARNING, pqipersonzone, pqioutput(PQL_WARNING, pqipersonzone,
"CONNECT_FAILED->marking so!"); "CONNECT_FAILED->marking so!");