Я тоже столкнулся с этой проблемой. Я получил свой код из CrowBar и запустил его через xulrunner 1.9.1 на Win 7.
Проблема возникает, когда меня отключают от сети. Если я в сети, это работает. У меня есть несколько потоков [несколько элементов XUL]. Но я полагаю, что я запускаю его в главном потоке (хотя я не уверен, как найти текущий поток), поэтому проблема с прослушиванием не должна быть проблемой.
Также я заметил, что в nsSocketTransportService2.cpp поток становится пустым, поэтому Борис может быть прав.
NS_IMETHODIMP
nsSocketTransportService::Dispatch (nsIRunnable *event, PRUint32 flags)
{
LOG(("STS dispatch [%p]\n", event));
nsCOMPtr<nsIThread> thread = GetThreadSafely();
NS_ENSURE_TRUE(thread, NS_ERROR_NOT_INITIALIZED);
nsresult rv = thread->Dispatch(event, flags);
if (rv == NS_ERROR_UNEXPECTED) {
// Thread is no longer accepting events. We must have just shut it
// down on the main thread. Pretend we never saw it.
rv = NS_ERROR_NOT_INITIALIZED;
}
return rv;
}
Надеюсь, это поможет определить проблему.
спасибо
harvinder