get_class_info takes a size argument

listdev displays scsi devices


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19285 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Jérôme Duval
2006-11-14 19:37:11 +00:00
parent 5ac11417e5
commit 07d5767dec
3 changed files with 99 additions and 18 deletions
+4 -4
View File
@@ -9,10 +9,10 @@
#include <stdio.h>
static void
get_class_info(uint8 pci_class_base_id, uint8 pci_class_sub_id, uint8 pci_class_api_id, char *classInfo)
get_class_info(uint8 pci_class_base_id, uint8 pci_class_sub_id, uint8 pci_class_api_id, char *classInfo, size_t size)
{
if (pci_class_base_id == 0x80)
sprintf(classInfo, " (Other)");
snprintf(classInfo, size, " (Other)");
else {
PCI_CLASSCODETABLE *s = PciClassCodeTable, *foundItem = NULL;
while (s->BaseDesc) {
@@ -27,10 +27,10 @@ get_class_info(uint8 pci_class_base_id, uint8 pci_class_sub_id, uint8 pci_class_
if (!s->BaseDesc)
s = foundItem;
if (pci_class_sub_id != 0x80)
sprintf(classInfo, "%s (%s%s%s)", s->BaseDesc, s->SubDesc,
snprintf(classInfo, size, "%s (%s%s%s)", s->BaseDesc, s->SubDesc,
(s->ProgDesc && strcmp("", s->ProgDesc)) ? ", " : "", s->ProgDesc);
else
sprintf(classInfo, "%s", s->BaseDesc);
snprintf(classInfo, size, "%s", s->BaseDesc);
}
}