id	summary	reporter	owner	description	type	status	priority	component	version	resolution	keywords	cc	guest	host
1957	DMI default processing is wrong => Fixed in 1.6.6	TerryE		My system is a home built one and as such the Mortheboard BIOS '''DmiSystemVendor''' is an empty string.  In order to avoid reactivation on Dual Native/VM boot, I therefore need my VM DmiSystemVendor to be empty also.  However in src/VBox/Devices/PC/DevPcBios.cpp we have\r\n{{{\r\n#define READCFGSTR(name, variable, default_value) \\\r\n    do { \\\r\n        rc = CFGMR3QueryStringAlloc(pCfgHandle, name, & variable); \\\r\n        if (rc == VERR_CFGM_VALUE_NOT_FOUND) \\\r\n            variable = MMR3HeapStrDup(PDMDevHlpGetVM(pDevIns), MM_TAG_CFGM, default_value); \\\r\n        else if (VBOX_FAILURE(rc)) \\\r\n            return PDMDevHlpVMSetError(pDevIns, rc, RT_SRC_POS, \\\r\n                    N_("Configuration error: Querying \\"" name "\\" as a string failed")); \\\r\n    } while (0)\r\n...\r\n    READCFGSTR("DmiSystemVendor",      pszDmiSystemVendor,    "innotek GmbH");\r\n}}} \r\nand in '''src/VBox/VMM/CFGM.cpp'''\r\n{{{\r\nCFGMR3DECL(int) CFGMR3QueryStringAlloc(PCFGMNODE pNode, const char *pszName, char **ppszString)\r\n{\r\n    size_t cch;\r\n    int rc = CFGMR3QuerySize(pNode, pszName, &cch);\r\n    if (VBOX_SUCCESS(rc))\r\n    {\r\n        char *pszString = (char *)MMR3HeapAlloc(pNode->pVM, MM_TAG_CFGM_USER, cch);\r\n        if (pszString)\r\n        {\r\n            rc = CFGMR3QueryString(pNode, pszName, pszString, cch);\r\n            if (VBOX_SUCCESS(rc))\r\n                *ppszString = pszString;\r\n            else\r\n                MMR3HeapFree(pszString);\r\n        }\r\n        else\r\n            rc = VERR_NO_MEMORY;\r\n    }\r\n    return rc;\r\n}\r\n}}}\r\nHence \r\n{{{\r\nVBoxManage setextradata "My VM" "VBoxInternal/Devices/pcbios/0/Config/DmiSystemVendor" ""\r\n}}}\r\n results in DmiSystemVendor being set to '''innotek GmbH''' if you specify '''""'''  !	defect	closed	major	VMM	VirtualBox 1.6.2	fixed	DMI BIOS		Windows	Linux
