Index: branches/chucko/i386/libsaio/nvidia.c =================================================================== --- branches/chucko/i386/libsaio/nvidia.c (revision 2302) +++ branches/chucko/i386/libsaio/nvidia.c (revision 2303) @@ -1699,10 +1699,9 @@ { if (nvidia_card_vendors[j].device == (subsys_id & 0xffff0000)) { - sprintf(name_model, "%s %s", - nvidia_card_vendors[j].name, nvidia_card_generic[i].name); - name_model[sizeof(name_model) - 1] = '\0'; - return name_model; + snprintf(name_model, sizeof(name_model), "%s %s", + nvidia_card_vendors[j].name, nvidia_card_generic[i].name); + return name_model; } } } @@ -2064,7 +2063,7 @@ } } - sprintf(biosVersion, "%s", (nvBiosOveride > 0) ? nvFilename : version_str); + snprintf(biosVersion, sizeof(biosVersion), "%s", (nvBiosOveride > 0) ? nvFilename : version_str); sprintf(kNVCAP, "NVCAP_%04x", nvda_dev->device_id); if (getValueForKey(kNVCAP, &value, &len, &bootInfo->chameleonConfig) && len == NVCAP_LEN * 2) @@ -2169,6 +2168,7 @@ memcpy(stringdata, (uint8_t*)devprop_generate_string(string), string->length); stringlength = string->length; + free(version_str); free(rom); return true; }