Fix field name length conversion
authorIgor Kulaychuk <i.kulaychuk@samsung.com>
Tue, 11 Jul 2017 20:15:37 +0000 (23:15 +0300)
committerIgor Kulaychuk <i.kulaychuk@samsung.com>
Mon, 13 Nov 2017 19:22:40 +0000 (22:22 +0300)
src/debug/debugger/valuewalk.cpp

index 765874f..3319b7c 100644 (file)
@@ -235,9 +235,9 @@ static HRESULT WalkMembers(ICorDebugValue *pInputValue, ICorDebugILFrame *pILFra
         ULONG nameLen = 0;
         DWORD fieldAttr = 0;
         WCHAR mdName[mdNameLen] = {0};
-        if(SUCCEEDED(pMD->GetFieldProps(fieldDef, NULL, mdName, mdNameLen, &nameLen, &fieldAttr, NULL, NULL, NULL, NULL, NULL)))
+        if(SUCCEEDED(pMD->GetFieldProps(fieldDef, NULL, mdName, _countof(mdName), &nameLen, &fieldAttr, NULL, NULL, NULL, NULL, NULL)))
         {
-            std::string name = to_utf8(mdName, nameLen);
+            std::string name = to_utf8(mdName /*, nameLen*/);
 
             if(fieldAttr & fdLiteral)
                 continue;
@@ -258,7 +258,7 @@ static HRESULT WalkMembers(ICorDebugValue *pInputValue, ICorDebugILFrame *pILFra
                     pObjValue->GetFieldValue(pClass, fieldDef, &pFieldVal);
             }
 
-            if(pFieldVal != NULL)
+            if (pFieldVal != NULL)
             {
                 if (name[0] == '<')
                 {