am d1d2c15d: Merge "logd: transitory reader thread create should be detached"

* commit 'd1d2c15de8ea09989e8072d197c22020860f1461':
  logd: transitory reader thread create should be detached
This commit is contained in:
Mark Salyzyn 2014-04-04 20:48:55 +00:00 committed by Android Git Automerger
commit 113efaaeec
1 changed files with 16 additions and 5 deletions

View File

@ -46,14 +46,25 @@ LogTimeEntry::LogTimeEntry(LogReader &reader, SocketClient *client,
{ }
void LogTimeEntry::startReader_Locked(void) {
pthread_attr_t attr;
threadRunning = true;
if (pthread_create(&mThread, NULL, LogTimeEntry::threadStart, this)) {
threadRunning = false;
if (mClient) {
mClient->decRef();
if (!pthread_attr_init(&attr)) {
if (!pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED)) {
if (!pthread_create(&mThread, &attr,
LogTimeEntry::threadStart, this)) {
pthread_attr_destroy(&attr);
return;
}
}
decRef_Locked();
pthread_attr_destroy(&attr);
}
threadRunning = false;
if (mClient) {
mClient->decRef();
}
decRef_Locked();
}
void LogTimeEntry::threadStop(void *obj) {