strtok() is not thread-safe, whereas strtok_r() is.
Gbp-Dch: ignore
FILE *dpkg = fdopen(external[0], "r");
if(dpkg != NULL) {
char buf[1024];
FILE *dpkg = fdopen(external[0], "r");
if(dpkg != NULL) {
char buf[1024];
while (fgets(buf, sizeof(buf), dpkg) != NULL) {
while (fgets(buf, sizeof(buf), dpkg) != NULL) {
- char* arch = strtok(buf, " ");
+ char* arch = strtok_r(buf, " ", &tok_buf);
while (arch != NULL) {
for (; isspace(*arch) != 0; ++arch);
if (arch[0] != '\0') {
while (arch != NULL) {
for (; isspace(*arch) != 0; ++arch);
if (arch[0] != '\0') {
if (std::find(archs.begin(), archs.end(), a) == archs.end())
archs.push_back(a);
}
if (std::find(archs.begin(), archs.end(), a) == archs.end())
archs.push_back(a);
}
- arch = strtok(NULL, " ");
+ arch = strtok_r(NULL, " ", &tok_buf);