if (!vendor)
vendor = "unknown";
+ char* buffer = NULL;
+
// Format string
- char buffer[STRING_SIZE];
- snprintf(buffer, STRING_SIZE - 1, "%s-%s-linux-gnu", arch, vendor);
+ int r = asprintf(&buffer, "%s-%s-linux-gnu", arch, vendor);
+ if (r < 0)
+ return NULL;
// Make everything lowercase
- for (unsigned int i = 0; i < strlen(buffer); i++)
+ for (unsigned int i = 0; i <= (unsigned int)r; i++)
buffer[i] = tolower(buffer[i]);
- return strdup(buffer);
+ return buffer;
}
static const char* __pakfire_arch_native = NULL;