铬 lldb 调试不显示字符串
chromium lldb debug not show string
我正在 xcode、
中调试 chromium
并在~/.lldinit文件中配置../chromium/src/third_party/WebKit/Tool/lldb/lldb_webkit.py,
但是显示的字符串不正确,只显示字符串的长度,不能显示内容,
所以不方便调试,看不到字符串的内容,这个问题如图所示。
in the picture1, picture2
希望内容不为空,正确显示字符串内容,或者有什么好的方法可以正确显示字符串内容
我觉得摘要格式化程序代码不对。它确实:
def WTFStringImpl_SummaryProvider(valobj, dict):
provider = WTFStringImplProvider(valobj, dict)
return "{ length = %d, is8bit = %d, contents = '%s' }" % (provider.get_length(), provider.is_8bit(), provider.to_string())
其中 WTFStringImplProvider.is8_bit 是:
def is_8bit(self):
return self.valobj.GetChildMemberWithName('is8_bit_')
这是返回一个 SBValue,而不是一个整数,所以用 %d 格式打印它似乎不是正确的做法。
我创建了这个问题 (https://bugs.chromium.org/p/chromium/issues/detail?id=1004272) to confirm that this is a bug, and have opened this code review to try to fix it: https://chromium-review.googlesource.com/c/chromium/src/+/1810444 .
这个补丁在我的本地环境下有效,你可以试一试
我正在 xcode、
中调试 chromium
并在~/.lldinit文件中配置../chromium/src/third_party/WebKit/Tool/lldb/lldb_webkit.py,
但是显示的字符串不正确,只显示字符串的长度,不能显示内容,
所以不方便调试,看不到字符串的内容,这个问题如图所示。
in the picture1, picture2
希望内容不为空,正确显示字符串内容,或者有什么好的方法可以正确显示字符串内容
我觉得摘要格式化程序代码不对。它确实:
def WTFStringImpl_SummaryProvider(valobj, dict):
provider = WTFStringImplProvider(valobj, dict)
return "{ length = %d, is8bit = %d, contents = '%s' }" % (provider.get_length(), provider.is_8bit(), provider.to_string())
其中 WTFStringImplProvider.is8_bit 是:
def is_8bit(self):
return self.valobj.GetChildMemberWithName('is8_bit_')
这是返回一个 SBValue,而不是一个整数,所以用 %d 格式打印它似乎不是正确的做法。
我创建了这个问题 (https://bugs.chromium.org/p/chromium/issues/detail?id=1004272) to confirm that this is a bug, and have opened this code review to try to fix it: https://chromium-review.googlesource.com/c/chromium/src/+/1810444 .
这个补丁在我的本地环境下有效,你可以试一试