Clean up verbose logging.
Change-Id: I6b01980e7145c4f8d25a5b50f620903f61a1b427
diff --git a/src/jdwp/jdwp_adb.cc b/src/jdwp/jdwp_adb.cc
index eb6eec2..eb49bce 100644
--- a/src/jdwp/jdwp_adb.cc
+++ b/src/jdwp/jdwp_adb.cc
@@ -121,7 +121,7 @@
static bool startup(JdwpState* state, const JdwpOptions*) {
JdwpNetState* netState;
- LOG(VERBOSE) << "ADB transport startup";
+ VLOG(jdwp) << "ADB transport startup";
state->netState = netState = new JdwpNetState;
if (netState == NULL) {
@@ -248,14 +248,16 @@
} while (ret < 0 && errno == EINTR);
if (ret >= 0) {
- LOG(VERBOSE) << StringPrintf("PID sent as '%.*s' to ADB", 4, buff);
+ VLOG(jdwp) << StringPrintf("PID sent as '%.*s' to ADB", 4, buff);
break;
}
PLOG(ERROR) << "Weird, can't send JDWP process pid to ADB";
return false;
}
- PLOG(VERBOSE) << "Can't connect to ADB control socket";
+ if (VLOG_IS_ON(jdwp)) {
+ PLOG(ERROR) << "Can't connect to ADB control socket";
+ }
usleep( sleep_ms*1000 );
@@ -269,7 +271,7 @@
}
}
- LOG(VERBOSE) << "trying to receive file descriptor from ADB";
+ VLOG(jdwp) << "trying to receive file descriptor from ADB";
/* now we can receive a client file descriptor */
netState->clientSock = receiveClientFd(netState);
if (netState->shuttingDown) {
@@ -282,7 +284,7 @@
}
goto retry;
} else {
- LOG(VERBOSE) << "received file descriptor " << netState->clientSock << " from ADB";
+ VLOG(jdwp) << "received file descriptor " << netState->clientSock << " from ADB";
netState->awaitingHandshake = 1;
netState->inputCount = 0;
return true;
@@ -308,7 +310,7 @@
return;
}
- LOG(VERBOSE) << "+++ closed JDWP <-> ADB connection";
+ VLOG(jdwp) << "+++ closed JDWP <-> ADB connection";
close(netState->clientSock);
netState->clientSock = -1;
@@ -343,7 +345,7 @@
}
if (netState->wakeFds[1] >= 0) {
- LOG(VERBOSE) << "+++ writing to wakePipe";
+ VLOG(jdwp) << "+++ writing to wakePipe";
write(netState->wakeFds[1], "", 1);
}
}
@@ -462,7 +464,7 @@
LOG(FATAL) << "reply?!";
}
- LOG(VERBOSE) << "----------";
+ VLOG(jdwp) << "----------";
consumeBytes(netState, length);
return true;
@@ -526,7 +528,7 @@
}
if (maxfd < 0) {
- LOG(VERBOSE) << "+++ all fds are closed";
+ VLOG(jdwp) << "+++ all fds are closed";
return false;
}
@@ -580,7 +582,7 @@
return true;
} else if (readCount == 0) {
/* EOF hit -- far end went away */
- LOG(VERBOSE) << "+++ peer disconnected";
+ VLOG(jdwp) << "+++ peer disconnected";
goto fail;
} else {
break;
@@ -619,7 +621,7 @@
consumeBytes(netState, kMagicHandshakeLen);
netState->awaitingHandshake = false;
- LOG(VERBOSE) << "+++ handshake complete";
+ VLOG(jdwp) << "+++ handshake complete";
return true;
}
@@ -646,7 +648,7 @@
if (netState->clientSock < 0) {
/* can happen with some DDMS events */
- LOG(VERBOSE) << "NOT sending request -- no debugger is attached";
+ VLOG(jdwp) << "NOT sending request -- no debugger is attached";
return false;
}
@@ -675,7 +677,7 @@
if (netState->clientSock < 0) {
/* can happen with some DDMS events */
- LOG(VERBOSE) << "NOT sending request -- no debugger is attached";
+ VLOG(jdwp) << "NOT sending request -- no debugger is attached";
return false;
}
diff --git a/src/jdwp/jdwp_event.cc b/src/jdwp/jdwp_event.cc
index a405c9b..f3e98f5 100644
--- a/src/jdwp/jdwp_event.cc
+++ b/src/jdwp/jdwp_event.cc
@@ -331,7 +331,7 @@
for (int i = 0; i < pEvent->modCount; i++) {
if (pEvent->mods[i].modKind == MK_COUNT && pEvent->mods[i].count.count == 0) {
- LOG(VERBOSE) << "##### Removing expired event";
+ VLOG(jdwp) << "##### Removing expired event";
UnregisterEvent(pEvent);
EventFree(pEvent);
break;
@@ -507,7 +507,7 @@
* SP_ALL - suspend everybody except JDWP support thread
*/
void JdwpState::SuspendByPolicy(JdwpSuspendPolicy suspendPolicy) {
- LOG(INFO) << "SuspendByPolicy(" << suspendPolicy << ")";
+ VLOG(jdwp) << "SuspendByPolicy(" << suspendPolicy << ")";
if (suspendPolicy == SP_NONE) {
return;
}
@@ -550,7 +550,7 @@
/* clear this before signaling */
pReq->invoke_needed_ = false;
- LOG(VERBOSE) << "invoke complete, signaling and self-suspending";
+ VLOG(jdwp) << "invoke complete, signaling and self-suspending";
MutexLock mu(pReq->lock_);
pReq->cond_.Signal();
}
@@ -589,13 +589,13 @@
* go to sleep indefinitely.
*/
while (eventThreadId != 0) {
- LOG(VERBOSE) << StringPrintf("event in progress (0x%llx), 0x%llx sleeping", eventThreadId, threadId);
+ VLOG(jdwp) << StringPrintf("event in progress (0x%llx), 0x%llx sleeping", eventThreadId, threadId);
waited = true;
event_thread_cond_.Wait(event_thread_lock_);
}
if (waited || threadId != 0) {
- LOG(VERBOSE) << StringPrintf("event token grabbed (0x%llx)", threadId);
+ VLOG(jdwp) << StringPrintf("event token grabbed (0x%llx)", threadId);
}
if (threadId != 0) {
eventThreadId = threadId;
@@ -614,7 +614,7 @@
MutexLock mu(event_thread_lock_);
CHECK_NE(eventThreadId, 0U);
- LOG(VERBOSE) << StringPrintf("cleared event token (0x%llx)", eventThreadId);
+ VLOG(jdwp) << StringPrintf("cleared event token (0x%llx)", eventThreadId);
eventThreadId = 0;
@@ -674,8 +674,8 @@
{
MutexLock mu(event_lock_); // probably don't need this here
- LOG(VERBOSE) << "EVENT: " << EK_VM_START;
- LOG(VERBOSE) << " suspendPolicy=" << suspendPolicy;
+ VLOG(jdwp) << "EVENT: " << EK_VM_START;
+ VLOG(jdwp) << " suspendPolicy=" << suspendPolicy;
expandBufAdd1(pReq, suspendPolicy);
expandBufAdd4BE(pReq, 1);
@@ -745,7 +745,7 @@
* this is mostly paranoia.)
*/
if (basket.threadId == debugThreadId) {
- LOG(VERBOSE) << "Ignoring location event in JDWP thread";
+ VLOG(jdwp) << "Ignoring location event in JDWP thread";
return false;
}
@@ -759,7 +759,7 @@
* method invocation to complete.
*/
if (InvokeInProgress()) {
- LOG(VERBOSE) << "Not checking breakpoints during invoke (" << basket.className << ")";
+ VLOG(jdwp) << "Not checking breakpoints during invoke (" << basket.className << ")";
return false;
}
@@ -783,12 +783,12 @@
FindMatchingEvents(EK_METHOD_EXIT, &basket, matchList, &matchCount);
}
if (matchCount != 0) {
- LOG(VERBOSE) << "EVENT: " << matchList[0]->eventKind << "(" << matchCount << " total) "
+ VLOG(jdwp) << "EVENT: " << matchList[0]->eventKind << "(" << matchCount << " total) "
<< basket.className << "." << Dbg::GetMethodName(pLoc->classId, pLoc->methodId)
<< " thread=" << (void*) basket.threadId << " code=" << (void*) pLoc->idx << ")";
suspendPolicy = scanSuspendPolicy(matchList, matchCount);
- LOG(VERBOSE) << " suspendPolicy=" << suspendPolicy;
+ VLOG(jdwp) << " suspendPolicy=" << suspendPolicy;
pReq = eventPrep();
expandBufAdd1(pReq, suspendPolicy);
@@ -857,11 +857,11 @@
}
if (matchCount != 0) {
- LOG(VERBOSE) << "EVENT: " << matchList[0]->eventKind << "(" << matchCount << " total) "
+ VLOG(jdwp) << "EVENT: " << matchList[0]->eventKind << "(" << matchCount << " total) "
<< "thread=" << (void*) basket.threadId << ")";
suspendPolicy = scanSuspendPolicy(matchList, matchCount);
- LOG(VERBOSE) << " suspendPolicy=" << suspendPolicy;
+ VLOG(jdwp) << " suspendPolicy=" << suspendPolicy;
pReq = eventPrep();
expandBufAdd1(pReq, suspendPolicy);
@@ -898,7 +898,7 @@
* Skips the usual "event token" stuff.
*/
bool JdwpState::PostVMDeath() {
- LOG(VERBOSE) << "EVENT: " << EK_VM_DEATH;
+ VLOG(jdwp) << "EVENT: " << EK_VM_DEATH;
ExpandBuf* pReq = eventPrep();
expandBufAdd1(pReq, SP_NONE);
@@ -938,7 +938,7 @@
/* don't try to post an exception caused by the debugger */
if (InvokeInProgress()) {
- LOG(VERBOSE) << "Not posting exception hit during invoke (" << basket.className << ")";
+ VLOG(jdwp) << "Not posting exception hit during invoke (" << basket.className << ")";
return false;
}
@@ -950,19 +950,19 @@
MutexLock mu(event_lock_);
FindMatchingEvents(EK_EXCEPTION, &basket, matchList, &matchCount);
if (matchCount != 0) {
- LOG(VERBOSE) << "EVENT: " << matchList[0]->eventKind << "(" << matchCount << " total)"
+ VLOG(jdwp) << "EVENT: " << matchList[0]->eventKind << "(" << matchCount << " total)"
<< " thread=" << (void*) basket.threadId
<< " exceptId=" << (void*) exceptionId
<< " caught=" << basket.caught << ")";
- LOG(VERBOSE) << " throw: " << *pThrowLoc;
+ VLOG(jdwp) << " throw: " << *pThrowLoc;
if (pCatchLoc->classId == 0) {
- LOG(VERBOSE) << " catch: (not caught)";
+ VLOG(jdwp) << " catch: (not caught)";
} else {
- LOG(VERBOSE) << " catch: " << *pCatchLoc;
+ VLOG(jdwp) << " catch: " << *pCatchLoc;
}
suspendPolicy = scanSuspendPolicy(matchList, matchCount);
- LOG(VERBOSE) << " suspendPolicy=" << suspendPolicy;
+ VLOG(jdwp) << " suspendPolicy=" << suspendPolicy;
pReq = eventPrep();
expandBufAdd1(pReq, suspendPolicy);
@@ -1018,7 +1018,7 @@
/* suppress class prep caused by debugger */
if (InvokeInProgress()) {
- LOG(VERBOSE) << "Not posting class prep caused by invoke (" << basket.className << ")";
+ VLOG(jdwp) << "Not posting class prep caused by invoke (" << basket.className << ")";
return false;
}
@@ -1030,11 +1030,11 @@
MutexLock mu(event_lock_);
FindMatchingEvents(EK_CLASS_PREPARE, &basket, matchList, &matchCount);
if (matchCount != 0) {
- LOG(VERBOSE) << "EVENT: " << matchList[0]->eventKind << "(" << matchCount << " total) "
+ VLOG(jdwp) << "EVENT: " << matchList[0]->eventKind << "(" << matchCount << " total) "
<< "thread=" << (void*) basket.threadId << ") " << signature;
suspendPolicy = scanSuspendPolicy(matchList, matchCount);
- LOG(VERBOSE) << " suspendPolicy=" << suspendPolicy;
+ VLOG(jdwp) << " suspendPolicy=" << suspendPolicy;
if (basket.threadId == debugThreadId) {
/*
@@ -1042,7 +1042,7 @@
* should set threadId to null and if any threads were supposed
* to be suspended then we suspend all other threads.
*/
- LOG(VERBOSE) << " NOTE: class prepare in debugger thread!";
+ VLOG(jdwp) << " NOTE: class prepare in debugger thread!";
basket.threadId = 0;
if (suspendPolicy == SP_EVENT_THREAD) {
suspendPolicy = SP_ALL;
diff --git a/src/jdwp/jdwp_handler.cc b/src/jdwp/jdwp_handler.cc
index 9f23af1..1b2ac43 100644
--- a/src/jdwp/jdwp_handler.cc
+++ b/src/jdwp/jdwp_handler.cc
@@ -108,9 +108,9 @@
uint32_t numArgs = Read4BE(&buf);
- LOG(VERBOSE) << StringPrintf(" --> threadId=%llx objectId=%llx", threadId, objectId);
- LOG(VERBOSE) << StringPrintf(" classId=%llx methodId=%x %s.%s", classId, methodId, Dbg::GetClassDescriptor(classId).c_str(), Dbg::GetMethodName(classId, methodId).c_str());
- LOG(VERBOSE) << StringPrintf(" %d args:", numArgs);
+ VLOG(jdwp) << StringPrintf(" --> threadId=%llx objectId=%llx", threadId, objectId);
+ VLOG(jdwp) << StringPrintf(" classId=%llx methodId=%x %s.%s", classId, methodId, Dbg::GetClassDescriptor(classId).c_str(), Dbg::GetMethodName(classId, methodId).c_str());
+ VLOG(jdwp) << StringPrintf(" %d args:", numArgs);
uint64_t* argArray = NULL;
if (numArgs > 0) {
@@ -122,12 +122,12 @@
size_t width = Dbg::GetTagWidth(typeTag);
uint64_t value = jdwpReadValue(&buf, width);
- LOG(VERBOSE) << StringPrintf(" '%c'(%d): 0x%llx", typeTag, width, value);
+ VLOG(jdwp) << StringPrintf(" '%c'(%d): 0x%llx", typeTag, width, value);
argArray[i] = value;
}
uint32_t options = Read4BE(&buf); /* enum InvokeOptions bit flags */
- LOG(VERBOSE) << StringPrintf(" options=0x%04x%s%s", options, (options & INVOKE_SINGLE_THREADED) ? " (SINGLE_THREADED)" : "", (options & INVOKE_NONVIRTUAL) ? " (NONVIRTUAL)" : "");
+ VLOG(jdwp) << StringPrintf(" options=0x%04x%s%s", options, (options & INVOKE_SINGLE_THREADED) ? " (SINGLE_THREADED)" : "", (options & INVOKE_NONVIRTUAL) ? " (NONVIRTUAL)" : "");
JDWP::JdwpTag resultTag;
uint64_t resultValue;
@@ -152,14 +152,14 @@
expandBufAdd1(pReply, JT_OBJECT);
expandBufAddObjectId(pReply, exceptObjId);
- LOG(VERBOSE) << StringPrintf(" --> returned '%c' 0x%llx (except=%08llx)", resultTag, resultValue, exceptObjId);
+ VLOG(jdwp) << StringPrintf(" --> returned '%c' 0x%llx (except=%08llx)", resultTag, resultValue, exceptObjId);
/* show detailed debug output */
if (resultTag == JT_STRING && exceptObjId == 0) {
if (resultValue != 0) {
- LOG(VERBOSE) << " string '" << Dbg::StringToUtf8(resultValue) << "'";
+ VLOG(jdwp) << " string '" << Dbg::StringToUtf8(resultValue) << "'";
} else {
- LOG(VERBOSE) << " string (null)";
+ VLOG(jdwp) << " string (null)";
}
}
}
@@ -195,7 +195,7 @@
*/
static JdwpError handleVM_ClassesBySignature(JdwpState* state, const uint8_t* buf, int dataLen, ExpandBuf* pReply) {
std::string classDescriptor(ReadNewUtf8String(&buf));
- LOG(VERBOSE) << " Req for class by signature '" << classDescriptor << "'";
+ VLOG(jdwp) << " Req for class by signature '" << classDescriptor << "'";
std::vector<RefTypeId> ids;
Dbg::FindLoadedClassBySignature(classDescriptor, ids);
@@ -324,7 +324,7 @@
*/
static JdwpError handleVM_CreateString(JdwpState* state, const uint8_t* buf, int dataLen, ExpandBuf* pReply) {
std::string str(ReadNewUtf8String(&buf));
- LOG(VERBOSE) << " Req to create string '" << str << "'";
+ VLOG(jdwp) << " Req to create string '" << str << "'";
ObjectId stringId = Dbg::CreateString(str);
if (stringId == 0) {
return ERR_OUT_OF_MEMORY;
@@ -451,7 +451,7 @@
static JdwpError handleRT_Signature(JdwpState* state, const uint8_t* buf, int dataLen, ExpandBuf* pReply) {
RefTypeId refTypeId = ReadRefTypeId(&buf);
- LOG(VERBOSE) << StringPrintf(" Req for signature of refTypeId=0x%llx", refTypeId);
+ VLOG(jdwp) << StringPrintf(" Req for signature of refTypeId=0x%llx", refTypeId);
std::string signature;
if (!Dbg::GetSignature(refTypeId, signature)) {
return ERR_INVALID_CLASS;
@@ -480,7 +480,7 @@
ReadRefTypeId(&buf); // We don't need this, but we need to skip over it in the request.
uint32_t numFields = Read4BE(&buf);
- LOG(VERBOSE) << " RT_GetValues " << numFields << ":";
+ VLOG(jdwp) << " RT_GetValues " << numFields << ":";
expandBufAdd4BE(pReply, numFields);
for (uint32_t i = 0; i < numFields; i++) {
@@ -523,7 +523,7 @@
*/
static JdwpError handleRT_Interfaces(JdwpState* state, const uint8_t* buf, int dataLen, ExpandBuf* pReply) {
RefTypeId refTypeId = ReadRefTypeId(&buf);
- LOG(VERBOSE) << StringPrintf(" Req for interfaces in %llx (%s)", refTypeId, Dbg::GetClassDescriptor(refTypeId).c_str());
+ VLOG(jdwp) << StringPrintf(" Req for interfaces in %llx (%s)", refTypeId, Dbg::GetClassDescriptor(refTypeId).c_str());
return Dbg::OutputDeclaredInterfaces(refTypeId, pReply) ? ERR_NONE : ERR_INVALID_CLASS;
}
@@ -536,7 +536,7 @@
if (!Dbg::GetClassObject(refTypeId, classObjectId)) {
return ERR_INVALID_CLASS;
}
- LOG(VERBOSE) << StringPrintf(" RefTypeId %llx -> ObjectId %llx", refTypeId, classObjectId);
+ VLOG(jdwp) << StringPrintf(" RefTypeId %llx -> ObjectId %llx", refTypeId, classObjectId);
expandBufAddObjectId(pReply, classObjectId);
return ERR_NONE;
}
@@ -559,7 +559,7 @@
RefTypeId refTypeId = ReadRefTypeId(&buf);
- LOG(VERBOSE) << StringPrintf(" Req for signature of refTypeId=0x%llx", refTypeId);
+ VLOG(jdwp) << StringPrintf(" Req for signature of refTypeId=0x%llx", refTypeId);
std::string signature;
if (Dbg::GetSignature(refTypeId, signature)) {
expandBufAddUtf8String(pReply, signature);
@@ -596,14 +596,14 @@
*/
static JdwpError handleRT_FieldsWithGeneric(JdwpState* state, const uint8_t* buf, int dataLen, ExpandBuf* pReply) {
RefTypeId refTypeId = ReadRefTypeId(&buf);
- LOG(VERBOSE) << " Req for fields in " << Describe(refTypeId);
+ VLOG(jdwp) << " Req for fields in " << Describe(refTypeId);
return Dbg::OutputDeclaredFields(refTypeId, true, pReply) ? ERR_NONE : ERR_INVALID_CLASS;
}
// Obsolete equivalent of FieldsWithGeneric, without the generic type information.
static JdwpError handleRT_Fields(JdwpState* state, const uint8_t* buf, int dataLen, ExpandBuf* pReply) {
RefTypeId refTypeId = ReadRefTypeId(&buf);
- LOG(VERBOSE) << " Req for fields in " << Describe(refTypeId);
+ VLOG(jdwp) << " Req for fields in " << Describe(refTypeId);
return Dbg::OutputDeclaredFields(refTypeId, false, pReply) ? ERR_NONE : ERR_INVALID_CLASS;
}
@@ -613,14 +613,14 @@
*/
static JdwpError handleRT_MethodsWithGeneric(JdwpState* state, const uint8_t* buf, int dataLen, ExpandBuf* pReply) {
RefTypeId refTypeId = ReadRefTypeId(&buf);
- LOG(VERBOSE) << " Req for methods in " << Describe(refTypeId);
+ VLOG(jdwp) << " Req for methods in " << Describe(refTypeId);
return Dbg::OutputDeclaredMethods(refTypeId, true, pReply) ? ERR_NONE : ERR_INVALID_CLASS;
}
// Obsolete equivalent of MethodsWithGeneric, without the generic type information.
static JdwpError handleRT_Methods(JdwpState* state, const uint8_t* buf, int dataLen, ExpandBuf* pReply) {
RefTypeId refTypeId = ReadRefTypeId(&buf);
- LOG(VERBOSE) << " Req for methods in " << Describe(refTypeId);
+ VLOG(jdwp) << " Req for methods in " << Describe(refTypeId);
return Dbg::OutputDeclaredMethods(refTypeId, false, pReply) ? ERR_NONE : ERR_INVALID_CLASS;
}
@@ -644,7 +644,7 @@
RefTypeId classId = ReadRefTypeId(&buf);
uint32_t values = Read4BE(&buf);
- LOG(VERBOSE) << StringPrintf(" Req to set %d values in classId=%llx", values, classId);
+ VLOG(jdwp) << StringPrintf(" Req to set %d values in classId=%llx", values, classId);
for (uint32_t i = 0; i < values; i++) {
FieldId fieldId = ReadFieldId(&buf);
@@ -652,7 +652,7 @@
size_t width = Dbg::GetTagWidth(fieldTag);
uint64_t value = jdwpReadValue(&buf, width);
- LOG(VERBOSE) << StringPrintf(" --> field=%x tag=%c -> %lld", fieldId, fieldTag, value);
+ VLOG(jdwp) << StringPrintf(" --> field=%x tag=%c -> %lld", fieldId, fieldTag, value);
Dbg::SetStaticFieldValue(fieldId, value, width);
}
@@ -685,7 +685,7 @@
ObjectId threadId = ReadObjectId(&buf);
MethodId methodId = ReadMethodId(&buf);
- LOG(VERBOSE) << "Creating instance of " << Dbg::GetClassDescriptor(classId);
+ VLOG(jdwp) << "Creating instance of " << Dbg::GetClassDescriptor(classId);
ObjectId objectId;
if (!Dbg::CreateObject(classId, objectId)) {
return ERR_INVALID_CLASS;
@@ -703,7 +703,7 @@
RefTypeId arrayTypeId = ReadRefTypeId(&buf);
uint32_t length = Read4BE(&buf);
- LOG(VERBOSE) << StringPrintf("Creating array %s[%u]", Dbg::GetClassDescriptor(arrayTypeId).c_str(), length);
+ VLOG(jdwp) << StringPrintf("Creating array %s[%u]", Dbg::GetClassDescriptor(arrayTypeId).c_str(), length);
ObjectId objectId;
if (!Dbg::CreateArrayObject(arrayTypeId, length, objectId)) {
return ERR_INVALID_CLASS;
@@ -723,7 +723,7 @@
RefTypeId refTypeId = ReadRefTypeId(&buf);
MethodId methodId = ReadMethodId(&buf);
- LOG(VERBOSE) << StringPrintf(" Req for line table in %s.%s", Dbg::GetClassDescriptor(refTypeId).c_str(), Dbg::GetMethodName(refTypeId,methodId).c_str());
+ VLOG(jdwp) << StringPrintf(" Req for line table in %s.%s", Dbg::GetClassDescriptor(refTypeId).c_str(), Dbg::GetMethodName(refTypeId,methodId).c_str());
Dbg::OutputLineTable(refTypeId, methodId, pReply);
@@ -737,7 +737,7 @@
RefTypeId classId = ReadRefTypeId(&buf);
MethodId methodId = ReadMethodId(&buf);
- LOG(VERBOSE) << StringPrintf(" Req for LocalVarTab in class=%s method=%s", Dbg::GetClassDescriptor(classId).c_str(), Dbg::GetMethodName(classId, methodId).c_str());
+ VLOG(jdwp) << StringPrintf(" Req for LocalVarTab in class=%s method=%s", Dbg::GetClassDescriptor(classId).c_str(), Dbg::GetMethodName(classId, methodId).c_str());
/*
* We could return ERR_ABSENT_INFORMATION here if the DEX file was
@@ -759,7 +759,7 @@
*/
static JdwpError handleOR_ReferenceType(JdwpState* state, const uint8_t* buf, int dataLen, ExpandBuf* pReply) {
ObjectId objectId = ReadObjectId(&buf);
- LOG(VERBOSE) << StringPrintf(" Req for type of objectId=0x%llx", objectId);
+ VLOG(jdwp) << StringPrintf(" Req for type of objectId=0x%llx", objectId);
JDWP::JdwpTypeTag refTypeTag;
RefTypeId typeId;
@@ -778,7 +778,7 @@
ObjectId objectId = ReadObjectId(&buf);
uint32_t numFields = Read4BE(&buf);
- LOG(VERBOSE) << StringPrintf(" Req for %d fields from objectId=0x%llx", numFields, objectId);
+ VLOG(jdwp) << StringPrintf(" Req for %d fields from objectId=0x%llx", numFields, objectId);
expandBufAdd4BE(pReply, numFields);
@@ -797,7 +797,7 @@
ObjectId objectId = ReadObjectId(&buf);
uint32_t numFields = Read4BE(&buf);
- LOG(VERBOSE) << StringPrintf(" Req to set %d fields in objectId=0x%llx", numFields, objectId);
+ VLOG(jdwp) << StringPrintf(" Req to set %d fields in objectId=0x%llx", numFields, objectId);
for (uint32_t i = 0; i < numFields; i++) {
FieldId fieldId = ReadFieldId(&buf);
@@ -806,7 +806,7 @@
size_t width = Dbg::GetTagWidth(fieldTag);
uint64_t value = jdwpReadValue(&buf, width);
- LOG(VERBOSE) << StringPrintf(" --> fieldId=%x tag='%c'(%d) value=%lld", fieldId, fieldTag, width, value);
+ VLOG(jdwp) << StringPrintf(" --> fieldId=%x tag='%c'(%d) value=%lld", fieldId, fieldTag, width, value);
Dbg::SetFieldValue(objectId, fieldId, value, width);
}
@@ -857,7 +857,7 @@
ObjectId objectId;
objectId = ReadObjectId(&buf);
- LOG(VERBOSE) << StringPrintf(" Req IsCollected(0x%llx)", objectId);
+ VLOG(jdwp) << StringPrintf(" Req IsCollected(0x%llx)", objectId);
// TODO: currently returning false; must integrate with GC
expandBufAdd1(pReply, 0);
@@ -872,7 +872,7 @@
ObjectId stringObject = ReadObjectId(&buf);
std::string str(Dbg::StringToUtf8(stringObject));
- LOG(VERBOSE) << StringPrintf(" Req for str %llx --> '%s'", stringObject, PrintableString(str).c_str());
+ VLOG(jdwp) << StringPrintf(" Req for str %llx --> '%s'", stringObject, PrintableString(str).c_str());
expandBufAddUtf8String(pReply, str);
@@ -885,12 +885,12 @@
static JdwpError handleTR_Name(JdwpState* state, const uint8_t* buf, int dataLen, ExpandBuf* pReply) {
ObjectId threadId = ReadObjectId(&buf);
- LOG(VERBOSE) << StringPrintf(" Req for name of thread 0x%llx", threadId);
+ VLOG(jdwp) << StringPrintf(" Req for name of thread 0x%llx", threadId);
std::string name;
if (!Dbg::GetThreadName(threadId, name)) {
return ERR_INVALID_THREAD;
}
- LOG(VERBOSE) << StringPrintf(" Name of thread 0x%llx is \"%s\"", threadId, name.c_str());
+ VLOG(jdwp) << StringPrintf(" Name of thread 0x%llx is \"%s\"", threadId, name.c_str());
expandBufAddUtf8String(pReply, name);
return ERR_NONE;
@@ -909,7 +909,7 @@
LOG(INFO) << " Warning: ignoring request to suspend self";
return ERR_THREAD_NOT_SUSPENDED;
}
- LOG(VERBOSE) << StringPrintf(" Req to suspend thread 0x%llx", threadId);
+ VLOG(jdwp) << StringPrintf(" Req to suspend thread 0x%llx", threadId);
Dbg::SuspendThread(threadId);
return ERR_NONE;
}
@@ -924,7 +924,7 @@
LOG(INFO) << " Warning: ignoring request to resume self";
return ERR_NONE;
}
- LOG(VERBOSE) << StringPrintf(" Req to resume thread 0x%llx", threadId);
+ VLOG(jdwp) << StringPrintf(" Req to resume thread 0x%llx", threadId);
Dbg::ResumeThread(threadId);
return ERR_NONE;
}
@@ -935,7 +935,7 @@
static JdwpError handleTR_Status(JdwpState* state, const uint8_t* buf, int dataLen, ExpandBuf* pReply) {
ObjectId threadId = ReadObjectId(&buf);
- LOG(VERBOSE) << StringPrintf(" Req for status of thread 0x%llx", threadId);
+ VLOG(jdwp) << StringPrintf(" Req for status of thread 0x%llx", threadId);
JDWP::JdwpThreadStatus threadStatus;
JDWP::JdwpSuspendStatus suspendStatus;
@@ -943,7 +943,7 @@
return ERR_INVALID_THREAD;
}
- LOG(VERBOSE) << " --> " << threadStatus << ", " << suspendStatus;
+ VLOG(jdwp) << " --> " << threadStatus << ", " << suspendStatus;
expandBufAdd4BE(pReply, threadStatus);
expandBufAdd4BE(pReply, suspendStatus);
@@ -985,7 +985,7 @@
size_t frameCount = Dbg::GetThreadFrameCount(threadId);
- LOG(VERBOSE) << StringPrintf(" Request for frames: threadId=%llx start=%d length=%d [count=%d]", threadId, startFrame, length, frameCount);
+ VLOG(jdwp) << StringPrintf(" Request for frames: threadId=%llx start=%d length=%d [count=%d]", threadId, startFrame, length, frameCount);
if (frameCount <= 0) {
return ERR_THREAD_NOT_SUSPENDED; /* == 0 means 100% native */
}
@@ -1007,7 +1007,7 @@
expandBufAdd8BE(pReply, frameId);
AddLocation(pReply, &loc);
- LOG(VERBOSE) << StringPrintf(" Frame %d: id=%llx loc={type=%d cls=%llx mth=%x loc=%llx}", i, frameId, loc.typeTag, loc.classId, loc.methodId, loc.idx);
+ VLOG(jdwp) << StringPrintf(" Frame %d: id=%llx loc={type=%d cls=%llx mth=%x loc=%llx}", i, frameId, loc.typeTag, loc.classId, loc.methodId, loc.idx);
}
return ERR_NONE;
@@ -1072,7 +1072,7 @@
*/
static JdwpError handleTGR_Name(JdwpState* state, const uint8_t* buf, int dataLen, ExpandBuf* pReply) {
ObjectId threadGroupId = ReadObjectId(&buf);
- LOG(VERBOSE) << StringPrintf(" Req for name of threadGroupId=0x%llx", threadGroupId);
+ VLOG(jdwp) << StringPrintf(" Req for name of threadGroupId=0x%llx", threadGroupId);
expandBufAddUtf8String(pReply, Dbg::GetThreadGroupName(threadGroupId));
@@ -1098,7 +1098,7 @@
*/
static JdwpError handleTGR_Children(JdwpState* state, const uint8_t* buf, int dataLen, ExpandBuf* pReply) {
ObjectId threadGroupId = ReadObjectId(&buf);
- LOG(VERBOSE) << StringPrintf(" Req for threads in threadGroupId=0x%llx", threadGroupId);
+ VLOG(jdwp) << StringPrintf(" Req for threads in threadGroupId=0x%llx", threadGroupId);
ObjectId* pThreadIds;
uint32_t threadCount;
@@ -1131,11 +1131,11 @@
*/
static JdwpError handleAR_Length(JdwpState* state, const uint8_t* buf, int dataLen, ExpandBuf* pReply) {
ObjectId arrayId = ReadObjectId(&buf);
- LOG(VERBOSE) << StringPrintf(" Req for length of array 0x%llx", arrayId);
+ VLOG(jdwp) << StringPrintf(" Req for length of array 0x%llx", arrayId);
uint32_t arrayLength = Dbg::GetArrayLength(arrayId);
- LOG(VERBOSE) << StringPrintf(" --> %d", arrayLength);
+ VLOG(jdwp) << StringPrintf(" --> %d", arrayLength);
expandBufAdd4BE(pReply, arrayLength);
@@ -1151,7 +1151,7 @@
uint32_t length = Read4BE(&buf);
uint8_t tag = Dbg::GetArrayElementTag(arrayId);
- LOG(VERBOSE) << StringPrintf(" Req for array values 0x%llx first=%d len=%d (elem tag=%c)", arrayId, firstIndex, length, tag);
+ VLOG(jdwp) << StringPrintf(" Req for array values 0x%llx first=%d len=%d (elem tag=%c)", arrayId, firstIndex, length, tag);
expandBufAdd1(pReply, tag);
expandBufAdd4BE(pReply, length);
@@ -1171,7 +1171,7 @@
uint32_t firstIndex = Read4BE(&buf);
uint32_t values = Read4BE(&buf);
- LOG(VERBOSE) << StringPrintf(" Req to set array values 0x%llx first=%d count=%d", arrayId, firstIndex, values);
+ VLOG(jdwp) << StringPrintf(" Req to set array values 0x%llx first=%d count=%d", arrayId, firstIndex, values);
if (!Dbg::SetArrayElements(arrayId, firstIndex, values, buf)) {
return ERR_INVALID_LENGTH;
@@ -1244,7 +1244,7 @@
uint8_t suspendPolicy = Read1(&buf);
uint32_t modifierCount = Read4BE(&buf);
- LOG(VERBOSE) << " Set(kind=" << JdwpEventKind(eventKind)
+ VLOG(jdwp) << " Set(kind=" << JdwpEventKind(eventKind)
<< " suspend=" << JdwpSuspendPolicy(suspendPolicy)
<< " mods=" << modifierCount << ")";
@@ -1268,7 +1268,7 @@
case MK_COUNT: /* report once, when "--count" reaches 0 */
{
uint32_t count = Read4BE(&buf);
- LOG(VERBOSE) << " Count: " << count;
+ VLOG(jdwp) << " Count: " << count;
if (count == 0) {
return ERR_INVALID_COUNT;
}
@@ -1278,28 +1278,28 @@
case MK_CONDITIONAL: /* conditional on expression) */
{
uint32_t exprId = Read4BE(&buf);
- LOG(VERBOSE) << " Conditional: " << exprId;
+ VLOG(jdwp) << " Conditional: " << exprId;
pEvent->mods[idx].conditional.exprId = exprId;
}
break;
case MK_THREAD_ONLY: /* only report events in specified thread */
{
ObjectId threadId = ReadObjectId(&buf);
- LOG(VERBOSE) << StringPrintf(" ThreadOnly: %llx", threadId);
+ VLOG(jdwp) << StringPrintf(" ThreadOnly: %llx", threadId);
pEvent->mods[idx].threadOnly.threadId = threadId;
}
break;
case MK_CLASS_ONLY: /* for ClassPrepare, MethodEntry */
{
RefTypeId clazzId = ReadRefTypeId(&buf);
- LOG(VERBOSE) << StringPrintf(" ClassOnly: %llx (%s)", clazzId, Dbg::GetClassDescriptor(clazzId).c_str());
+ VLOG(jdwp) << StringPrintf(" ClassOnly: %llx (%s)", clazzId, Dbg::GetClassDescriptor(clazzId).c_str());
pEvent->mods[idx].classOnly.refTypeId = clazzId;
}
break;
case MK_CLASS_MATCH: /* restrict events to matching classes */
{
std::string pattern(ReadNewUtf8String(&buf));
- LOG(VERBOSE) << StringPrintf(" ClassMatch: '%s'", pattern.c_str());
+ VLOG(jdwp) << StringPrintf(" ClassMatch: '%s'", pattern.c_str());
/* pattern is "java.foo.*", we want "java/foo/ *" */
pEvent->mods[idx].classMatch.classPattern = dvmDotToSlash(pattern.c_str());
}
@@ -1307,7 +1307,7 @@
case MK_CLASS_EXCLUDE: /* restrict events to non-matching classes */
{
std::string pattern(ReadNewUtf8String(&buf));
- LOG(VERBOSE) << StringPrintf(" ClassExclude: '%s'", pattern.c_str());
+ VLOG(jdwp) << StringPrintf(" ClassExclude: '%s'", pattern.c_str());
pEvent->mods[idx].classExclude.classPattern = dvmDotToSlash(pattern.c_str());
}
break;
@@ -1316,7 +1316,7 @@
JdwpLocation loc;
jdwpReadLocation(&buf, &loc);
- LOG(VERBOSE) << StringPrintf(" LocationOnly: typeTag=%d classId=%llx methodId=%x idx=%llx",
+ VLOG(jdwp) << StringPrintf(" LocationOnly: typeTag=%d classId=%llx methodId=%x idx=%llx",
loc.typeTag, loc.classId, loc.methodId, loc.idx);
pEvent->mods[idx].locationOnly.loc = loc;
}
@@ -1329,7 +1329,7 @@
exceptionOrNull = ReadRefTypeId(&buf);
caught = Read1(&buf);
uncaught = Read1(&buf);
- LOG(VERBOSE) << StringPrintf(" ExceptionOnly: type=%llx(%s) caught=%d uncaught=%d",
+ VLOG(jdwp) << StringPrintf(" ExceptionOnly: type=%llx(%s) caught=%d uncaught=%d",
exceptionOrNull, (exceptionOrNull == 0) ? "null" : Dbg::GetClassDescriptor(exceptionOrNull).c_str(), caught, uncaught);
pEvent->mods[idx].exceptionOnly.refTypeId = exceptionOrNull;
@@ -1341,7 +1341,7 @@
{
RefTypeId declaring = ReadRefTypeId(&buf);
FieldId fieldId = ReadFieldId(&buf);
- LOG(VERBOSE) << StringPrintf(" FieldOnly: %llx %x", declaring, fieldId);
+ VLOG(jdwp) << StringPrintf(" FieldOnly: %llx %x", declaring, fieldId);
pEvent->mods[idx].fieldOnly.refTypeId = declaring;
pEvent->mods[idx].fieldOnly.fieldId = fieldId;
}
@@ -1354,7 +1354,7 @@
threadId = ReadObjectId(&buf);
size = Read4BE(&buf);
depth = Read4BE(&buf);
- LOG(VERBOSE) << StringPrintf(" Step: thread=%llx", threadId)
+ VLOG(jdwp) << StringPrintf(" Step: thread=%llx", threadId)
<< " size=" << JdwpStepSize(size) << " depth=" << JdwpStepDepth(depth);
pEvent->mods[idx].step.threadId = threadId;
@@ -1365,7 +1365,7 @@
case MK_INSTANCE_ONLY: /* report events related to a specific obj */
{
ObjectId instance = ReadObjectId(&buf);
- LOG(VERBOSE) << StringPrintf(" InstanceOnly: %llx", instance);
+ VLOG(jdwp) << StringPrintf(" InstanceOnly: %llx", instance);
pEvent->mods[idx].instanceOnly.objectId = instance;
}
break;
@@ -1391,7 +1391,7 @@
pEvent->requestId = requestId;
- LOG(VERBOSE) << StringPrintf(" --> event requestId=%#x", requestId);
+ VLOG(jdwp) << StringPrintf(" --> event requestId=%#x", requestId);
/* add it to the list */
JdwpError err = state->RegisterEvent(pEvent);
@@ -1412,7 +1412,7 @@
eventKind = Read1(&buf);
uint32_t requestId = Read4BE(&buf);
- LOG(VERBOSE) << StringPrintf(" Req to clear eventKind=%d requestId=%#x", eventKind, requestId);
+ VLOG(jdwp) << StringPrintf(" Req to clear eventKind=%d requestId=%#x", eventKind, requestId);
state->UnregisterEventById(requestId);
@@ -1427,14 +1427,14 @@
FrameId frameId = ReadFrameId(&buf);
uint32_t slots = Read4BE(&buf);
- LOG(VERBOSE) << StringPrintf(" Req for %d slots in threadId=%llx frameId=%llx", slots, threadId, frameId);
+ VLOG(jdwp) << StringPrintf(" Req for %d slots in threadId=%llx frameId=%llx", slots, threadId, frameId);
expandBufAdd4BE(pReply, slots); /* "int values" */
for (uint32_t i = 0; i < slots; i++) {
uint32_t slot = Read4BE(&buf);
JDWP::JdwpTag reqSigByte = ReadTag(&buf);
- LOG(VERBOSE) << StringPrintf(" --> slot %d '%c'", slot, reqSigByte);
+ VLOG(jdwp) << StringPrintf(" --> slot %d '%c'", slot, reqSigByte);
size_t width = Dbg::GetTagWidth(reqSigByte);
uint8_t* ptr = expandBufAddSpace(pReply, width+1);
@@ -1452,7 +1452,7 @@
FrameId frameId = ReadFrameId(&buf);
uint32_t slots = Read4BE(&buf);
- LOG(VERBOSE) << StringPrintf(" Req to set %d slots in threadId=%llx frameId=%llx", slots, threadId, frameId);
+ VLOG(jdwp) << StringPrintf(" Req to set %d slots in threadId=%llx frameId=%llx", slots, threadId, frameId);
for (uint32_t i = 0; i < slots; i++) {
uint32_t slot = Read4BE(&buf);
@@ -1460,7 +1460,7 @@
size_t width = Dbg::GetTagWidth(sigByte);
uint64_t value = jdwpReadValue(&buf, width);
- LOG(VERBOSE) << StringPrintf(" --> slot %d '%c' %llx", slot, sigByte, value);
+ VLOG(jdwp) << StringPrintf(" --> slot %d '%c' %llx", slot, sigByte, value);
Dbg::SetLocalValue(threadId, frameId, slot, sigByte, value, width);
}
@@ -1480,7 +1480,7 @@
}
uint8_t objectTag = Dbg::GetObjectTag(objectId);
- LOG(VERBOSE) << StringPrintf(" Req for 'this' in frame=%llx --> %llx '%c'", frameId, objectId, (char)objectTag);
+ VLOG(jdwp) << StringPrintf(" Req for 'this' in frame=%llx --> %llx '%c'", frameId, objectId, (char)objectTag);
expandBufAdd1(pReply, objectTag);
expandBufAddObjectId(pReply, objectId);
@@ -1498,7 +1498,7 @@
static JdwpError handleCOR_ReflectedType(JdwpState* state, const uint8_t* buf, int dataLen, ExpandBuf* pReply) {
RefTypeId classObjectId = ReadRefTypeId(&buf);
- LOG(VERBOSE) << StringPrintf(" Req for refTypeId for class=%llx (%s)", classObjectId, Dbg::GetClassDescriptor(classObjectId).c_str());
+ VLOG(jdwp) << StringPrintf(" Req for refTypeId for class=%llx (%s)", classObjectId, Dbg::GetClassDescriptor(classObjectId).c_str());
bool is_interface;
if (!Dbg::IsInterface(classObjectId, is_interface)) {
@@ -1518,7 +1518,7 @@
uint8_t* replyBuf = NULL;
int replyLen = -1;
- LOG(VERBOSE) << StringPrintf(" Handling DDM packet (%.4s)", buf);
+ VLOG(jdwp) << StringPrintf(" Handling DDM packet (%.4s)", buf);
/*
* On first DDM packet, notify all handlers that DDM is running.
@@ -1755,7 +1755,7 @@
size_t i;
for (i = 0; i < arraysize(gHandlerMap); i++) {
if (gHandlerMap[i].cmdSet == pHeader->cmdSet && gHandlerMap[i].cmd == pHeader->cmd && gHandlerMap[i].func != NULL) {
- LOG(VERBOSE) << DescribeCommand(pHeader, dataLen);
+ VLOG(jdwp) << DescribeCommand(pHeader, dataLen);
result = (*gHandlerMap[i].func)(this, buf, dataLen, pReply);
break;
}
diff --git a/src/jdwp/jdwp_main.cc b/src/jdwp/jdwp_main.cc
index ad0610d..608ad04 100644
--- a/src/jdwp/jdwp_main.cc
+++ b/src/jdwp/jdwp_main.cc
@@ -271,7 +271,7 @@
Runtime* runtime = Runtime::Current();
runtime->AttachCurrentThread("JDWP", true);
- LOG(VERBOSE) << "JDWP: thread running";
+ VLOG(jdwp) << "JDWP: thread running";
/*
* Finish initializing, then notify the creating thread that
@@ -379,7 +379,7 @@
/* back to running, for thread shutdown */
Dbg::ThreadRunning();
- LOG(VERBOSE) << "JDWP: thread detaching and exiting...";
+ VLOG(jdwp) << "JDWP: thread detaching and exiting...";
runtime->DetachCurrentThread();
}
@@ -423,7 +423,7 @@
/* initializing or in the middle of something? */
if (last == 0) {
- LOG(VERBOSE) << "+++ last=busy";
+ VLOG(jdwp) << "+++ last=busy";
return 0;
}
@@ -431,7 +431,7 @@
int64_t now = MilliTime();
CHECK_GT(now, last);
- LOG(VERBOSE) << "+++ debugger interval=" << (now - last);
+ VLOG(jdwp) << "+++ debugger interval=" << (now - last);
return now - last;
}
diff --git a/src/jdwp/jdwp_socket.cc b/src/jdwp/jdwp_socket.cc
index b832133..d28c1da 100644
--- a/src/jdwp/jdwp_socket.cc
+++ b/src/jdwp/jdwp_socket.cc
@@ -222,7 +222,7 @@
/* if we might be sitting in select, kick us loose */
if (netState->wakePipe[1] >= 0) {
- LOG(VERBOSE) << "+++ writing to wakePipe";
+ VLOG(jdwp) << "+++ writing to wakePipe";
(void) write(netState->wakePipe[1], "", 1);
}
}
@@ -353,7 +353,9 @@
// When we call shutdown() on the socket, accept() returns with
// EINVAL. Don't gripe about it.
if (errno == EINVAL) {
- PLOG(VERBOSE) << "accept failed";
+ if (VLOG_IS_ON(jdwp)) {
+ PLOG(ERROR) << "accept failed";
+ }
} else {
PLOG(ERROR) << "accept failed";
return false;
@@ -363,13 +365,13 @@
netState->remoteAddr = addr.addrInet.sin_addr;
netState->remotePort = ntohs(addr.addrInet.sin_port);
- LOG(VERBOSE) << "+++ accepted connection from " << inet_ntoa(netState->remoteAddr) << ":" << netState->remotePort;
+ VLOG(jdwp) << "+++ accepted connection from " << inet_ntoa(netState->remoteAddr) << ":" << netState->remotePort;
netState->clientSock = sock;
netState->awaitingHandshake = true;
netState->inputCount = 0;
- LOG(VERBOSE) << "Setting TCP_NODELAY on accepted socket";
+ VLOG(jdwp) << "Setting TCP_NODELAY on accepted socket";
setNoDelay(netState->clientSock);
if (pipe(netState->wakePipe) < 0) {
@@ -476,7 +478,7 @@
return;
}
- LOG(VERBOSE) << "+++ closed connection to " << inet_ntoa(netState->remoteAddr) << ":" << netState->remotePort;
+ VLOG(jdwp) << "+++ closed connection to " << inet_ntoa(netState->remoteAddr) << ":" << netState->remotePort;
close(netState->clientSock);
netState->clientSock = -1;
@@ -543,7 +545,7 @@
dataLen = length - (buf - packetBuf);
- LOG(VERBOSE) << StringPrintf("--- %s: dataLen=%u id=0x%08x flags=0x%02x cmd=%d/%d",
+ VLOG(jdwp) << StringPrintf("--- %s: dataLen=%u id=0x%08x flags=0x%02x cmd=%d/%d",
reply ? "reply" : "req", dataLen, id, flags, cmdSet, cmd);
if (dataLen > 0) {
HexDump(buf, dataLen);
@@ -608,7 +610,7 @@
DCHECK(false);
}
- LOG(VERBOSE) << "----------";
+ VLOG(jdwp) << "----------";
consumeBytes(netState, length);
return true;
@@ -653,7 +655,7 @@
}
if (maxfd < 0) {
- LOG(VERBOSE) << "+++ all fds are closed";
+ VLOG(jdwp) << "+++ all fds are closed";
return false;
}
@@ -769,7 +771,7 @@
consumeBytes(netState, kMagicHandshakeLen);
netState->awaitingHandshake = false;
- LOG(VERBOSE) << "+++ handshake complete";
+ VLOG(jdwp) << "+++ handshake complete";
return true;
}
@@ -797,7 +799,7 @@
/*dumpPacket(expandBufGetBuffer(pReq));*/
if (netState->clientSock < 0) {
/* can happen with some DDMS events */
- LOG(VERBOSE) << "NOT sending request -- no debugger is attached";
+ VLOG(jdwp) << "NOT sending request -- no debugger is attached";
return false;
}
@@ -825,7 +827,7 @@
if (netState->clientSock < 0) {
/* can happen with some DDMS events */
- LOG(VERBOSE) << "NOT sending request -- no debugger is attached";
+ VLOG(jdwp) << "NOT sending request -- no debugger is attached";
return false;
}