any reason other than an harmless signal (i.e. one whose
handler didn't set a switch to stop the loop), then break
out of the loop and terminate.
The old code would ignore the error and keep looping, using up
ca. 98% of the CPU until somebody killed it.
M src/router/osrf_router.c
git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@1839
9efc2488-bf62-4759-914b-
345cdb29e865
else
continue; // Irrelevant signal; ignore it
} else {
- osrfLogWarning( OSRF_LOG_MARK,
- "Top level select call failed with errno %d", errno);
- continue;
+ osrfLogWarning( OSRF_LOG_MARK, "Top level select call failed with errno %d: %s",
+ errno, strerror( errno ) );
+ break;
}
}